簡単でワクワクするAndroidウィジェット10連発!:Androidで動く携帯Javaアプリ作成入門(4)(2/3 ページ)
本連載で、SDKとEclipseを使ってAndroidの携帯端末で動くJavaアプリを作成し、Android Market配布を目指しましょう
【2】入力の要、エディットテキストやスピナー
ユーザーからの入力を受け付ける最も簡単なウィジェットはEditTextです。
クラス | 概要 |
---|---|
EditText | 通常のエディットテキスト |
AutoCompleteTextView | 候補の中から自動補完されるエディットテキスト |
MultipleAutoCompleteTextView | 候補の中から自動補完されるエディットテキスト(複数選択が可能) |
表2 EditTextウィジェット(代表的なもの) |
AutoCompleteTextViewなどは、とてもケータイとは思えないリッチなウィジェットです。
上図は、あらかじめプログラミング言語がいくつか登録されている状態のAutoCompleteTextViewに「Jav」と入力したところです。このウィジェットはあらゆるシーンで便利に使えそうです。
【3】2種類の時計
Androidにはアナログ時計とデジタル時計が用意されています。
デモでは、デフォルトの設定で表示させていますが、アナログ時計は、短針や長針、背景などをLayout Editor上から変更することで、カスタマイズが可能です。デジタル時計も背景、フォントなどをLayout Editor上から変更してカスタマイズできます。
作成したいアプリのスタイルに応じて使い分けてみてください。
【4】長い処理を行う際のプログレスバー
何か長い処理を実行する場合、現在処理実行中であることをユーザーに通知した方がよく、そうしたケースではしばしばプログレスバーが用いられます。
上記は大きな画像を読み込んでいる、というつもりのプログレスバーです。すべての画像を読み込むと(実際には1つしか読み込まない)、プログレスバーは表示されなくなり、代わりに画像が表示されます。
時間のかかる処理は、それ専用のスレッドを作成して処理を行っています。このスレッドから直接ウィジェットを操作することはできません。そのための仕組みであるHandlerを使用して、ウィジェットに対してコールバックから操作を行うようにしています。
なお、この画面では、可視性を操作していますので、可視性についても説明しておきます。最初に画像を表示させるImageViewは非表示になっていますが、プログレスが100%になったタイミングでTextViewとProgressBarを非表示にして、ImageViewを表示させています。
Androidでは、可視性がtureやfalseだけではなく、以下のように設定できます。
可視性 | 概要 |
---|---|
visible | 表示されている状態。デフォルト |
invisible | 表示されていないが、領域は確保されている状態 |
gone | 表示も領域の確保もされていない状態 |
表3 Viewの可視性 |
【5】日付と時刻を選択させたい
日付や時刻をユーザーに選択させるには、DatePickerDialog、TimePickerDialogを使用すると簡単です。
【6】クロノメーターで時間計測
スタート、ストップ、フォーマットの設定が可能な経過時間を表示するウィジェットです。フォーマットは時刻部分以外が自由に設定可能です。時刻は「MM:SS」または「H:MM:SS」のどちらかの指定です。
Copyright © ITmedia, Inc. All Rights Reserved.