Androidで使えるGUIコントロールをピックアップ
Androidアプリを開発しようと思って、最初に画面仕様を考えるんですが、
Androidで使えるGUIコントロールって何があるの?…と思い一覧にしてみました。
Android GUI一覧 | |
---|---|
レイアウト | |
GUI名称 | 説明 |
AbsoluteLayout | AbsoluteLayoutにViewを配置する際は、画面上の座標を直接することになる(例 x = 20, y = 30...)。部品毎に座標を指定する必要があるため、正直使い道がない。 |
FrameLayout | 唯一つのViewを配置することができる。複数のViewを追加した場合は、古いViewは削除され新しいViewのみ表示される。 |
LinearLayout | LinearLayoutのOrientationプロパティと、weightプロパティを使いこなせるか否で、驚くほどアプリの完成度が変わってくる。 OrientationをHorizontalにすると、追加するViewは全て横並びになる。Verticalにすると縦並びになる。又、子ビューのweghitを1にする事で、部品の並びを均等にすることができる。 |
RelativeLayout | 包含するView同士を相対的に配置することが可能である。画面の上下左右に寄せたり、包含されるViewの上下左右に隣接してButtonなどを配置可能。レイアウトの中では特に使いやすく、極め細やかな設定が可能である。 |
TableLayout | 感覚的にはHTMLのテーブルレイアウトと似ている。整列された画面を作る場合は有効であるが、レイアウト的には少し複雑になる。 |
ウィジェット | |
GUI名称 | 説明 |
SurfaceViews | Viewクラスから独立した描画スレッドを立ち上げ管理することができる。ゲームのように、毎フレーム画面を更新するような場合に有効。 |
View | 各種ウィジェットの基底クラス。サブクラスにはTextViewやEditTextクラスなどがある。View単体では余り使い道がなさそう。 |
WebView | HTTP通信などを行いHTMLを表示するためのView。WebView単体でも簡易なWebブラウザとして機能する。 |
AnalogClock |
アナログ時計を表示するウィジェット。 |
AutoCompleteTextView |
テキスト入力を補完する際に利用。 |
Button |
アプリケーションでイベント発生させるための重要なウェジェット。ボタンをタッチした際にイベント発生させるにはOnClickListenerをセットしておき、onClick()で拾って処理したりなど。 |
CheckBox |
チェックボックス。ListViewに組み込む事もあると思うが、そんな時はチェックボックスのフォーカスを外すと幸せになれるかも… |
CheckBoxPreference |
チェックボックスを含むPreferenceで、アプリの設定値を保存しておく場合は、利用価値有り。 |
CheckedTextView |
TextViewにCheckBoxがくっついたウィジェット… |
Chronometer |
経過時間を計測するコントロール。ストップウォッチを作る場合に使えそう。 |
DatePicker |
年、月、日を表示する事ができるコントロール。ただし、AndroidSDK1.6では日本語ロケールで表示すると、月の部分が2桁表示になると1桁目が隠れてしまうバグがあるそうな・・・ |
DigitalClock |
デジタル時計のウィジェット。 |
EditText |
文字入力する際に利用出来るコントロール。タップするとソフトウェアキーボードが飛び出す。他のウィジェットと違い、画面に表示した際は必ずフォーカスが当たる。ちょっと癖がある感じです。 |
ExpandableListView | 蛇腹状に開閉するListView。ListViewのItemをクリックすると、子要素を表示してくれる。 |
Gallery | 複数の画像を表示する際は便利なウィジェット。 |
ListView | 標準のListViewでは単一列、複数行でデータを表現できる。背景色を変えたり、文字のサイズを変える場合はAdapterをカスタマイズする必要がある。ウィジェットの中では一番利用頻度の高い。 |
ImageButton |
Buttonではボタンの上下左右にしか画像を配置できませんでしたが、ImageButtonではsrcプロパティを使い、ボタンの真ん中に画像を配置することが出来ます。 |
ImageView | srcプロパティに画像リソースを指定することで、簡易に画像を表示することができる。ImageViewを再描画したい場合は、invalidate()を使おう。Viewクラスのinvalidate()は仕様が変わったため、使わないほうが無難。 |
MultiAutoCompleteTextView |
入力した内容から、文章の候補を表示する。 |
ProgressBar |
プログレスバー。待ち時間が発生するときに利用します。 |
RadioButton |
ラジオボタン。複数の選択肢から任意の要素を設定する場合に利用。 |
RatingBar |
AnroidMarketで、アプリを評価する際に表示されるアレと同じものです。多分。 |
SeekBar |
アプリケーション内のパラメーター値を設定する際に利用できそうです。例:音量の上げ下げなど。 |
Spinner |
Windowsで言うところの、コンボボックスです。 |
ScrollView | レイアウトに配置したViewなどが画面から垂直方向にはみ出る場合は、ScrollViewを使いましょう。注意点として、ScrollViewは一つのViewしか包含できない事。 Viewが複数の場合はレイアウト > ScrollView > レイアウトとする。 |
TextView |
テキスト表示するためのコントロール。 |
TimePicker |
時、分を設定できます。DatePickerみたいなバグはありません。 |
ToggleButton |
パラメーターのON/OFFを表現する際に利用できそうです。 |
Toast |
画面下部に字幕でメッセージを表示します。 |
TwoLineListItem | ListView内でひとつの行に、2行分のアイテムを表示したい場合はオススメ。 |
VideoView |
動画を再生するときに利用します。 |
ZoomButton | 画像の拡大、縮小コントロールです。 |