3

ダイアログのように使用できるアクティビティを作成しようとしています。マイ アクティビティにはダイアログ テーマがあるため、ダイアログの雰囲気があります。私のレイアウトでは、メッセージを表示する TextView と 3 つのボタン (ポジティブ、ネガティブ、ニュートラル) を追加しました。表示されるテキスト メッセージは、インテントでエクストラとして渡されます。ボタン名も同様です。インテント エクストラで空の文字列が渡されたボタンを非表示にしています。ボタンクリックリスナーを実装する方法がわからないことを除けば、これはほとんどダイアログの動作を実装しています。

何か案は?

4

2 に答える 2

1

XMLファイルにレイアウトがある場合onClick="onMyButtonClick"、ボタンのようなものを追加できます。コードでは、

public void onMyButtonClick(View sender) { ... }

または、あなたの中に持つことができますonCreate()

Button myButton = (Button)findViewById(R.id.my_button);
myButton.setOnClickListener(new OnClickListener() { ... });

finish()おそらく一緒に、どこかで onClickListenerから呼び出したいと思うでしょうsetResult()

于 2011-11-24T06:35:44.677 に答える
1

これは非常に簡単ですstartActivityForResult(Intent, requestCode); 。ダイアログ アクティビティの結果を取得するには、メソッド onActivityResult(int requestCode, int resultCode, Intent data) を介してダイアログを開始し、オーバーライドする必要があります。

各ダイアログ ボタンは、呼び出しsetResult()て終了する必要があります。そして、resultCode とデータを渡した場合は、メソッド onActivityResult のメイン アクティビティに戻ります。

于 2011-11-24T06:44:00.957 に答える