前回に続き、iアプリのユーザーインタフェース(UI)の基礎を学ぶ。高レベルUIコンポーネントのレイアウトを解説していく。

高レベルUIのレイアウト

 コンポーネントの配置ルールは、高レベルUI独自のレイアウト方法が標準では使われる。これはデフォルトレイアウトと呼ばれ、左上から右下へコンポーネントを配置していくシンプルなレイアウトである。これをHTMLレイアウトと呼ばれるWebサイトのHTMLコンテンツを配置するときに似たレイアウト方法に変更することができる。HTMLレイアウトを使うためには、明示的にHTMLレイアウトを呼び出す必要がある。

public class HTMLLayoutSample extends Panel {
    HTMLLayoutSample() {
        HTMLLayout hl = new HTMLLayout();
        setLayoutManager(hl);
        Label lh1 = new Label("Label1(HTML)");
        Label lh2 = new Label("Label2(HTML)");
        add(lh1);
        // Labelの後改行を入れないと改行しない
        hl.br();
        add(lh2);
        // Labelの後改行を入れないと改行しない
        hl.br();
    }
}

 また、レイアウトはすべて独自に行う設定をすることもできる。そのためには、HTMLレイアウトのサンプルでも使用しているsetLayoutManager()メソッドのパラメータにnullを指定する。

   setLayoutManager(null);

 レイアウトを独自設定にすると、UIコンポーネントごとに、座標やレイアウト方法を逐次指定する必要がある。例えばラベルであれば、以下のように配置方法を宣言する。この例では、Labelに対してセンタリングを指定している。

      Label l = new Label(“Label”);
      l.setAlignment(CENTER);

Dialog

 Dialogとは、テキストメッセージをポップアップ表示させるUIである。ユーザーに何らかの確認をさせるときに使用する。Dialogは、高レベルUIとも低レベルUIとも組み合わせて使用することができる。Dialogには、タイトル文字を指定することができる。Dialogには、確認ボタンが必ず表示され、ボタンの形式は以下のDialogのtypeによって変わる。

・エラー(DIALOG_ERROR)
・警告(DIALOG_WARNING)
・情報(DIALOG_INFORMATION)
・はい/いいえ確認(DIALOG_YESNO)
・はい/いいえ/キャンセル確認(DIALOG_YESNOCANCEL)

 以下は、エラー(DIALOG_ERROR)を表示させるサンプルである。

public class DialogSample extends Panel {
    DialogSample() {
        Dialog d1 = new Dialog(Dialog.DIALOG_ERROR, "ERROR");
        d1.setText("ERRORダイアログ");
        d1.show();
    }
}