AlertDialog クラスを拡張して、OnClickListener を実装しようとしましたか?
public class MyDialog extends AlertDialog implements OnClickListener {
private Button myButton;
public void onCreate( Bundle savedInstanceState ) {
super.onCreate( savedInstanceState );
// use LayoutInflater to get at custom button
LayoutInflater layoutInflater = (LayoutInflater)getContext().getSystemService( Context.LAYOUT_INFLATER_SERVICE );
View contentView = layoutInflater.inflate( R.layout.mydialog_layout, null );
// pull button from layout, set listener
myButton = (Button)contentView.findViewById( R.id.myButtonId );
myButton.setOnClickListener( this );
setContentView( contentView );
}
public void onClick( View v ) {
if ( v.getId() == R.id.myButtonId ) {
// DO your button actions.
}
}
}
このテンプレートに従って、必要なボタンを配置し、ダイアログ自体に独自の機能を作成できます。実行時に独自のボタンを作成することもできますが、ボタンのテキスト、サイズ、アイコンなどを構成する追加作業を行う必要があります。
次に、onCreateDialog() 呼び出しの下で、アクティビティのダイアログを作成できます。
protected Dialog onCreateDialog( int id ) {
MyDialog dialog = new MyDialog( this, 0 );
dialog.setOnCancelListener( this );
dialog.setOnDismissListener( this );
return dialog;
}
お役に立てれば。