Android-dialog.cancle不起作用问题
我自己自定义一个dialog,不想用默认的dialog的button,自己在布局中加了2个button,点击button后dialog.cancle不起作用,dialog取消不了是怎么回事,代码是:
AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
View layout = MainActivity.this.getLayoutInflater().inflate(R.layout.my_dialog_layout, null);
final TextView cancle = (TextView) layout.findViewById(R.id.btn_cancle);
final TextView ok = (TextView) layout.findViewById(R.id.btn_ok);
builder.setView(layout);
builder.setTitle(getString(R.string.dialog_tile));
final AlertDialog dialog = builder.create();
cancle.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
dialog.cancel();
}
});
ok.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
dialog.cancel();
}
});
dialog.show();
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
仔细一看你的代码,突然惊愕的发现了 TextView,亲,要看看你的 my_dialog_layout 里面肿么写的控件了。
AlertDialog.Builder aBuilder = new AlertDialog.Builder(
MainActivity.this);
View layout = getLayoutInflater().inflate(R.layout.todo, null);
final Button cancel = (Button) layout.findViewById(R.id.todo_button);
aBuilder.setView(layout);
aBuilder.setTitle(getString(R.string.app_name));
final Dialog dialog = aBuilder.create();
dialog.show();
cancel.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
dialog.cancel();
}
});
布局
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello_world" />
<Button
android:id="@+id/todo_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/app_name" />
</LinearLayout>
祝好,
斑驳敬上