FC2ブログ
ヽ|∵|ゝ(Fantom) の 開発blog? ホーム » Android »【Android】【Java】AlertDialog を使ってみる

【Android】【Java】AlertDialog を使ってみる  


 おおまかな ADV っぽいシステムは出来てしまったので、次は選択肢や確認ダイアログを作ってみようかと検討中。その前に通常のアクティビティで使える AlertDialog をテストしてみた。


Android エミュレータ

AlertDialog.Builder builder = new AlertDialog.Builder(this); //this は Context
builder.setTitle("タイトルだよん");
builder.setMessage("メッセージだよん");
builder.setIcon(android.R.drawable.ic_dialog_alert); //SDK の platforms/android-xx/data/res から

builder.setPositiveButton("はい", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
//which = -1 (AlertDialog.BUTTON_POSITIVE) が返る
}
});

builder.setNegativeButton("いいえ", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
//which = -2 (AlertDialog.BUTTON_NEGATIVE) が返る
}
});

Dialog dialog = builder.create(); //Activity の onCreateDialog() の戻値など
dialog.show(); //←↑builder.show() でもできる。Activity の showDialog() を使ってるときは不要

 this は Context を指す。アイコンはフリーをダウンロードしても良いが、インストールした SDK の platforms/android-xx/data/res 以下のアイコンを使えるみたいなのでやってみた。

 リスナーには匿名インナークラスを使っているが、which には DialogInterface定数が戻ってくる。

BUTTON_POSITIVE = -1
BUTTON_NEGATIVE = -2
BUTTON_NEUTRAL = -3

 setNeutralButton() も使ってみたが、真ん中に出てくるね。右端の方が使いやすいのにな・・・。

 ちなみに ActivityonCreateDialog()showDialog() を使う分にはアクティビティのライフサイクルに乗るので、画面回転したときなどは自動的に復元してくれるが、独自のメソッドでダイアログを生成した場合は、画面回転で消える(自動復元しない)ので注意。

 まぁ、ADVのシステムSurfaceViewThread によって独自のレンダリングしてるので、やはり自作するつもりだけどね。

 選択肢なんかはゲーム中に画面中央にいきなり出ると、間違えて押してしまうので、確認クリックも付けた方がいいしね。


関連記事
スポンサーサイト



category: Android

thread: プログラミング

janre: コンピュータ

tb: 0   cm: --


トラックバック

トラックバックURL
→http://fantom1x.blog130.fc2.com/tb.php/104-d1b0116b
この記事にトラックバックする(FC2ブログユーザー)

プロフィール

Social

検索フォーム

全記事一覧

カテゴリ

ユーザータグ

最新記事

リンク

PR