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

  1. AlertDialog.show(引数);

とするようなのだが、上の公式リファレンスを見ても
show というメソッドはどこにもない。
まだまだ見方がよくわからない・・・。 🙄
 

基本セット
  1. AlertDialog.show([context], [title], [message]);
  2.  
  3. // サンプル
  4. AlertDialog.show([this, "あいさつ", "おはよう");
[context]

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

[title]

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

[message]

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

満載セット
  1. AlertDialog.show([context], [title], [message],
  2.                 [view],
  3.                 [button1Text], [button1Listener],
  4.                 [button2Text], [button2Listener],
  5.                 [button3Text], [button3Listener],
  6.                 [cancelable], [cancelListener]
  7. );
  8.  
  9. // サンプル
  10. AlertDialog.show([this, "あいさつ", "おはよう"
  11.                 ビュー名,
  12.                 "OK", リスナー名,
  13.                 "Cancel", リスナー名,
  14.                 "ビューがあるときは3番目のボタンはないかな?", リスナー名,
  15.                 true, リスナー名
  16. );

 

[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