【发布时间】:2018-04-03 00:53:15
【问题描述】:
我正在使用 android 中的对话框创建自定义弹出窗口。使用自定义弹出窗口时,我使用取消按钮来关闭它。但现在我想通过在弹出窗口之外触摸来关闭它。怎么做?
我到目前为止所尝试的
private void showDetails() {
final Dialog dialog = new Dialog(mContext, android.R.style.Theme_Translucent);
dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
dialog.setContentView(R.layout.popup_base_menu);
dialog.setCanceledOnTouchOutside(true);
text_cancel = (TextView) dialog.findViewById(R.id.text_cancel);
txt_create_group_chat = (TextView) dialog.findViewById(R.id.txt_create_group_chat);
txt_create_chat = (TextView) dialog.findViewById(R.id.txt_create_chat);
txt_create_chatroom = dialog.findViewById(R.id.txt_create_chatroom);
text_cancel.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
dialog.dismiss();
}
});
txt_create_group_chat.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent in = new Intent(mContext, CreateGroupChat.class);
startActivity(in);
dialog.cancel();
}
});
txt_create_chat.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent in = new Intent(mContext, SearchActivity.class);
startActivity(in);
dialog.cancel();
}
});
txt_create_chatroom.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent in = new Intent(mContext, CreateChatroomActivity.class);
startActivity(in);
dialog.cancel();
}
});
dialog.show();
}
【问题讨论】:
-
你试过
dialog.setCancelable(true);吗? -
是的。没用
标签: android dialog android-popupwindow