タグ

ブックマーク / techbooster.org (7)

  • Androidの画面サイズを攻略して機種依存を吸収する(ナビゲーションバーとステータスバーのサイズを取得する) | TechBooster

    ※上記の名前付けは一般的なものではなく、今回の解説用に定義した名前です。(Displayクラスのサイズといえばどれもディスプレイサイズということになるため、わかりやすさを優先して図示しました) 特にステータスバーとナビゲーションバーは端末ごとカスタマイズされている可能性もあるため、動的に取得するのが望ましい項目と言えるでしょう。しかしながら、直接この2つの高さ情報を取得するAPIは存在していません。踏み込んで解説するならば、これらはアプリケーションの領域外でありアプリが気にする必要はなく、気にしないでいられるデザインやレイアウトを検討すべきである、という設計思想がうかがえます。設計思想を尊重するならば、このあと解説するAPIをなるべく使わないでいいように工夫できると機種依存の苦悩から解放されるでしょう。 取得する方法は続きから ナビゲーションバーを除いたディスプレイサイズを取得する ディス

    Androidの画面サイズを攻略して機種依存を吸収する(ナビゲーションバーとステータスバーのサイズを取得する) | TechBooster
  • マルチユーザ対応 Android 4.2以降の内部ストレージと外部ストレージ | TechBooster

    getFilesDirで取得できるPath以下にファイルを作成する。第1引数にファイル名、第2引数にアクセスモードを指定(MODE_PRIVATEが一般的)する。 ActivityクラスのgetFilesDirメソッド、getCacheDirメソッドを使うと端末で指定されているアプリケーション専用のデータ領域を取得できます。 ログにパスを出力するだけの簡単なサンプルコードを用意しました。実行してマルチユーザ時の挙動を確認してみましょう。 //アプリケーション専用データ領域 //ファイル保存ディレクトリ Log.d("Multi", " getFilesDir(): " + getFilesDir()); //キャッシュ保存ディレクトリ(消去される可能性あり) Log.d("Multi", " getCacheDir(): " + getCacheDir()); ※ちなみにCacheDirは

    マルチユーザ対応 Android 4.2以降の内部ストレージと外部ストレージ | TechBooster
  • Android アプリケーション上からapkをインストールする方法 | TechBooster

    AndroidアプリケーションはAndroidマーケットからのみではなく、それ以外の手段でも インストールすることが可能です。たとえば、SDカードなどの領域に保存しているapkを アプリケーション上からインストールすることができます。 これによりたとえば、Androidマーケットに公開できないアプリ(アップロード上限を超えてしまうサイズのアプリのような)を公開したい場合や、独自のマーケットで公開したい場合などに利用することが可能です。 詳しい解説は続きからどうぞ。 MIME typeを指定する apkのインストールはMIME typeに application/vnd.android.package-archiveを指定したIntentを発行するだけです。 たとえばSDカード上に保存されているapkをインストールしたい場合には以下のようにします。 String fileName = Env

    Android アプリケーション上からapkをインストールする方法 | TechBooster
  • Android ボタンの背景をダイナミックに変える方法 | TechBooster

    Androidではボタンを押した場合や離した場合と、ボタンの状態によって背景をダイナミックに変えることができます。 これは「State List」というリソースを使うことで簡単に実現できます。 あらかじめボタンに使う画像ファイルを/res/drawableに追加しておきます。 次に/res/drawableにbutton.xmlというxmlファイルを作ります。 <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <!-- pressed --> <item android:state_pressed="true" android:drawable="@drawable/lilastoy" /> <!-- released --

    Android ボタンの背景をダイナミックに変える方法 | TechBooster
    abetomotomo
    abetomotomo 2013/02/06
    ボタン!
  • Android リストビュー(ListView)を使う | TechBooster

    リストの項目が選択された(端末の十字キー等でリストの項目がフォーカスされた)時と、選択されていない時の処理 リストの項目が選択された時の処理を作るには、ListViewクラスのonItemSelectedメソッドを使います。 また、リストの項目が選択されていない時の処理を作るには、ListViewクラスのonNothingSelectedメソッドを使います。 具体的には、イカのようにします。 ■src/ListViewActivity.java ListView lv = (ListView) findViewById(R.id.listView1); lv.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { @Override public void onItemSelected(AdapterView

    Android リストビュー(ListView)を使う | TechBooster
    abetomotomo
    abetomotomo 2012/01/26
    ListView
  • AlertDialogをカスタマイズして文字を入力する方法(カスタムダイアログの作り方) | TechBooster

    Androidには標準でいろんなダイアログが用意されています。これまでに紹介したダイアログは警告表示(AlertDialog)、時刻入力(TimePickerDialog)、日付入力(DatePickerDialog)などです。 今回は、文字入力など開発者がより自由に使えるダイアログのカスタマイズについてご紹介します。ActivityのshowDialog()とonCreateDialog()を使えば簡単にレイアウトファイルを適用した、カスタムダイアログを作成できます。 続きはサンプルコードと詳細です。 ひな形 @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); //buttonを取得 Bu

    AlertDialogをカスタマイズして文字を入力する方法(カスタムダイアログの作り方) | TechBooster
    abetomotomo
    abetomotomo 2012/01/17
    ダイアログカスタマイズ
  • Android ViewにTweenアニメーションを使用する | TechBooster

    以前のViewFlipperでアニメーションする(ViewAnimator) では、ViewFlipperにアニメーションをつける方法を紹介しました。今回はより一般的にViewにアニメーションをつける方法、アニメーションの種類を解説します。 アニメーションのタイプは大きく2つに分類できます。Tweenアニメーション(Animation)とFrameアニメーション(AnimationDrawable)です。 Tweenアニメーション:1つのイメージを連続に変化させるタイプ 移動、フェード、回転、拡大縮小、それらを組み合わせて変化させます Frameアニメーション:順番にイメージを並べて表示してアニメーションにするタイプ 順番に表示させる画像をあらかじめ用意して、パラパラ漫画のように表示します ここでは1つのイメージを連続的に変化させるTween Animationを解説します。アニメーション

    Android ViewにTweenアニメーションを使用する | TechBooster
    abetomotomo
    abetomotomo 2012/01/13
    ViewFlipper
  • 1