ボタンが押されたらテキストを変更します。
package com.custumdaialog; import android.app.Activity; import android.app.AlertDialog; import android.content.DialogInterface; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.widget.TextView; public class CustumDaialogActivity extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); // レイアウトの呼び出し LayoutInflater factory = LayoutInflater.from(this); final View inputView = factory.inflate(R.layout.about, null); // ダイアログのオブジェクト(dlg) 生成 AlertDialog.Builder dlg = new AlertDialog.Builder(this); // ダイアログにタイトルを指定 dlg.setTitle("タイトル"); // カスタムレイアウトの表示 dlg.setView(inputView); // アラートダイアログのポジティブボタンがクリックされた時に呼び出されるコールバックリスナーを登録します dlg.setPositiveButton("ポジティブ", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { } }); // ダイアログを表示 dlg.show(); } public void SetButtonOnClick(View v) { TextView message; message = (TextView)this.findViewById(R.id.textView1); message.setText("新しいテキスト"); } }about.xmlのソース
<linearlayout android:layout_height="match_parent" android:layout_width="match_parent" android:orientation="vertical" xmlns:android="http://schemas.android.com/apk/res/android"> <linearlayout android:id="@+id/linearLayout1" android:layout_height="wrap_content" android:layout_width="match_parent"> <button android:id="@+id/button1" android:layout_height="wrap_content" android:layout_width="wrap_content" android:onclick="SetButtonOnClick" android:text="テキスト変更"></button> <button android:id="@+id/button2" android:layout_height="wrap_content" android:layout_width="wrap_content" android:text="Button"></button> </linearlayout> </linearlayout>
main.xmlのソース
<linearlayout android:layout_height="fill_parent" android:layout_width="fill_parent" android:orientation="vertical" xmlns:android="http://schemas.android.com/apk/res/android"> <textview android:layout_height="wrap_content" android:layout_width="fill_parent" android:text="@string/hello"> <textview android:id="@+id/textView1" android:layout_height="wrap_content" android:layout_width="wrap_content" android:text="TextView"></textview> </textview></linearlayout>
参考にさせて頂いてます。
返信削除ダイアログ上のボタンクリック時にダイアログ上のテキストを操作する事は出来ないのでしょうか?
AlertDialogではなくDialogでないと無理ですかね。
カスタムダイアログ1で追加されているボタン1とかボタン2をリスナー登録したいのですが出来ないのでしょうか?
返信削除