});ケータイとは思えないほど豊かな表現力のウィジェットGUIベースで操作するプラットフォームでは、GUIコンポーネント(ライブラリ)の種類が豊富であればあるほど、豊かな表現のアプリが作成できます。DoJaでもMIDPでも、GUIコンポーネントを使用したアプリというのはあまり見掛けません。その最大の理由は、GUIコンポーネントが「かっこ悪い」から、そして「使いにくい」からだと思います。同じJavaであるAndroidはどうなのでしょうか。答えは「DoJaやMIDPとは違う」です。AndroidのGUIコンポーネント(以下、ウィジェット)はかっこ悪くも使いにくくもないというところを、アプリを使いながら紹介していきます。スクリーンショットを見てみましょう(下記表はインデックスになっています)。【10】値の変更を検知ほとんどの画面がソースコードで100行以下です。画面の設定もごく簡単です。こんなリッチなウィジェットが用意されているなんて、なんだかワクワクしてきませんか?このデモアプリのソースコードは、以下のリンクよりダウンロードできます。Introduction.zip編集部注:最新の環境では、サンプルコードをEclipseにインポートすると、コンパイルエラーが発生することがあります。対処法は連載第2回の『2011年9月23日追記「Androidのバージョン違いによるサンプルの動作について補足」』をご参照くださいそれぞれの画面のコードは短いのですが、今回のデモアプリは10画面あるため、すべてを詳細に説明することは残念ながらできません。詳しく知りたいな、と感じたら、実際に動作させながらソースコードを追ってみてください。Androidアプリ画面の作成方法Androidアプリの画面は、XMLで定義してそれを読み込む方法と、すべてJavaのコードで記述する方法が選択できます。どちらが簡単かというと、もちろんXMLであらかじめ定義しておく方法です。Editor」があり、実行時と同じ見た目でレイアウトが編集できるので、非常に便利です。Editorで編集しました。画面レイアウトは、「res/layout」フォルダに任意の名前のXMLファイルを作成します。ファイル名には、アルファベットの小文字や数字、アンダースコアしか使用できませんが、その範囲内で分かりやすい名前を付けるといいでしょう。【1】何はともあれボタンは必要ユーザーからの意思決定を受け取るには、ボタンが一番分かりやすいウィジェットでしょう。5つの主なボタンAndroidには、以下のボタンが用意されています。Buttonウィジェット(代表的なもの)ボタンに関しては説明が不要なんじゃないかなと思います。ボタンを押したイベントの取得(setOnClickListener)、現在の状態の取得(isChecked)はもちろん、Androidの特徴として、長押しの検知(setOnLongClickListener)、タッチの検知(setOnTouchListener)などがあります。「イベントが取得できるウィジェット」Androidのウィジェットはandroid.view.Viewクラスから派生しています。ボタンの場合、以下のような派生をしています。ボタンの派生のUML図ほとんどのイベントリスナーはViewに用意されているので、ほとんどのウィジェットが長押しやタッチのイベントを捕捉できます。凝った動きのアプリを作りたいと思ったら、こうしたイベントを活用するのも有効です。メールマガジンをご購読ください。申し込みページへITmediaはアイティメディア株式会社の登録商標です。