AlertDialog & AlertDialog.Builder

Posted by muchag | Android |
初回投稿:2011-03-29 (火) 1:22:42 | 最終更新:2011-03-29 (火) 16:35:10

AlertDialog & AlertDialog.Builder
モーダレス なメッセージダイアログ。

差異

AlertDialog はインスタンスの生成ができないらしい。

参考サイト:無題のAndroid入門中 AlertDialog  AlertDialog.Builderの違い

現在私があれこれ見ただけの段階でのイメージは

AlertDialog

一般的なダイアログクラス。
 

AlertDialog.Builder

Builder っていうくらいなわけでダイアログ生成のための
お助けクラス?

冗長になりがちな AlertDialog のコードを
詳細且つより論理的に記述できるもの。
 

AlertDialog

Android Developers:AlertDialog

[android]AlertDialog.show(引数);[/android] とするようなのだが、上の公式リファレンスを見ても
show というメソッドはどこにもない。
まだまだ見方がよくわからない・・・。 🙄
 

基本セット
[android]AlertDialog.show([context], [title], [message]);

// サンプル
AlertDialog.show([this, “あいさつ”, “おはよう”);[/android]

[context]

ベースとなる Context (ダイアログの親)。
アクティビティ直下なら this
アクティビティ内のクラス内なら アクティビティ名.this 。
っぽい。
 

[title]

ダイアログに冠するタイトル。
 

[message]

ダイアログに表示するメッセージ。
 
んで、いっぱい機能を利用しようとするとガンガン増えていく。
 

満載セット
[android] AlertDialog.show([context], [title], [message],
[view],
[button1Text], [button1Listener],
[button2Text], [button2Listener],
[button3Text], [button3Listener],
[cancelable], [cancelListener] );

// サンプル
AlertDialog.show([this, “あいさつ”, “おはよう”
ビュー名,
“OK”, リスナー名,
“Cancel”, リスナー名,
“ビューがあるときは3番目のボタンはないかな?”, リスナー名,
true, リスナー名
);[/android]  

[view]

ダイアログに表示させたいビューのインスタンス。
必要がなければ書かなければよい。
 

[buttonText], [buttonListener]
[buttonText] – ボタンに表示させたい文字列。
[buttonListener] – ボタンがクリックされたときに使用するリスナーを指定。

必要な個数分だけ書けばよい。
3個まで?
 

[cancelable], [cancelListener]

携帯なら Back(戻る)キー
PC なら ESC(エスケープ)キー
を有効にするか否か。
有効なときはそのリスナーを指定。
無効なときはリスナーは null 。
false, null

<参考サイト>
JavaDrive:AlertDialogクラス
AllAbout For M Java プログラミング:androidのダイアログを使いこなそう!
 

AlertDialog.Builder

Android Developers:AlertDialog.Builder
まだまだ記事を書くほどわからないし
素晴らしいサイトがいくつもあるので
ひとまずは、参考サイトの列挙まで。

<参考サイト>
八角研究所:Android で再開する Java プログラミング(14) – ダイアログを制するものがAndroidを制する!
yan note:Android AlertDialogを表示する
 

注意

どこで読んだのか忘れてしまったので
うる覚えでメモ。

AlertDialog の OnClickListener および OnCancelListener
View のものとは異なり、DialogInterface のものなので衝突が起きる。
Flex のとき(Flash Builder 4 -> 並存コンポーネントのクラッシュ)にあったやつだ。

そこでパッケージ名からちゃんと記述してやるとよい。
android.content.DialogInterface.OnClickListener ・・・だったかしら・・・。
その内ちゃんと書き直す・・・だろう・・・書き直せ! 私! 👿

Posted by muchag | Android |
初回投稿:2011-03-29 (火) 1:22:42 | 最終更新:2011-03-29 (火) 16:35:10

コメントはまだありません »

No comments yet.

RSS feed for comments on this post. TrackBack URI

Leave a comment