Androidアプリの使いやすさを左右する5つのレイアウトAndroidで動く携帯Javaアプリ作成入門(5)(3/3 ページ)

» 2009年04月09日 00時00分 公開
[緒方聡,株式会社イーフロー]
前のページへ 1|2|3       

表示位置を絶対座標で指定する「AbsoluteLayout」

 表示位置を絶対座標で指定するレイアウトです。

図11 AbsoluteLayout 図11 AbsoluteLayout

 座標は、図12のように指定しています。

図12 ウィジェットの座標 図12 ウィジェットの座標

 このレイアウトは余白を自動的に使用することはできず、ウィジェットの縦横のサイズを変えたい場合、自分で指定しなければなりません。

 通常、デバイスごとに画面サイズが異なるため、絶対座標やサイズを指定すると、デバイスの画面に対して大き過ぎたり小さ過ぎたりすることがあるため、特別な理由がない限りこのレイアウトを使用することはお勧めできません。

AbsoluteLayoutの細かい設定

  • TextView/EditText - android:layout_x="..."
    対象のウィジェットのX座標を指定。単位はピクセル
  • TextView/EditText - android:layout_y="..."
    対象のウィジェットのY座標を指定。単位はピクセル
  • EditText/Button - android:layout_width="..."
    対象のウィジェットの幅を指定。単位はピクセル

最もシンプルな「FrameLayout」

 すべてのレイアウトの中で最もシンプルなレイアウトです。シンプル過ぎて、今回のお題のログイン画面は、このレイアウトでは構成できません。そのため、前回紹介したアナログ時計とデジタル時計を配置した画面で、このレイアウトの説明をします。

図13 FrameLayout 図13 FrameLayout

 FrameLayoutは本来、1つのウィジェットを配置する目的で設計されています。複数のウィジェットを配置した場合、今回のように、後から配置したウィジェットが前面に描画される形になります。

 また、配置するウィジェットの位置は設定できず、常に左上に配置されます。

Android Layout Editorでレイアウトを“入れ子”にしよう

 今回は、Androidの一般的なレイアウトを一通り見てみました。レイアウトごとに特徴があり、どのような用途に向いているか理解してもらえたのではないかと思います。画面の構成を考えて、実際にAndroid Layout Editorでレイアウトする際には「レイアウトは入れ子にできる」ということをくれぐれも忘れないようにしてください。

 今回のソースも以下のリンクからダウンロード可能です。

編集部注:最新の環境では、サンプルコードをEclipseにインポートすると、コンパイルエラーが発生することがあります。対処法は連載第2回の『2011年9月23日追記「Androidのバージョン違いによるサンプルの動作について補足」』をご参照ください

 次回は、Androidの特徴の1つでもある組み込みデータベースをどのように使えばよいかを見ていきましょう。


「Androidで動く携帯Javaアプリ作成入門」バックナンバー
前のページへ 1|2|3       

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。