0
是否可以使PopupWindow成爲模態,但不能作爲AlertDialog? 我需要把定製佈局與自定義確定和取消按鈕,有時只是自定義確定按鈕。是否有可能使PopupWindow成爲模態,而不是AlertDialog?
是否可以使PopupWindow成爲模態,但不能作爲AlertDialog? 我需要把定製佈局與自定義確定和取消按鈕,有時只是自定義確定按鈕。是否有可能使PopupWindow成爲模態,而不是AlertDialog?
爲什麼不使用AlertDialog?您可以撥打setContentView()
方法自定義對話框視圖
Here是一個示例。
您可以使用帶有對話框窗口的自定義佈局。
下面是一個例子。
public class Dialog
{
private static Dialog dlg = null;
public static void create(Context context, String title, String message, boolean cancelable)
{
if (dlg != null)
{
return;
}
dlg = new Dialog (context);
dlg.requestWindowFeature(Window.FEATURE_NO_TITLE);
dlg.getWindow().setBackgroundDrawableResource(R.color.transparent);
dlg.setContentView(R.layout.help_dialog);
TextView titleHeader = (TextView)dlg.findViewById(R.id.popup_header_text);
titleHeader.setText(Html.fromHtml((String) title));
TextView content = (TextView)dlg.findViewById(R.id.help_content);
content.setText(Html.fromHtml((String) message));
Button okBtn = (Button)dlg.findViewById(R.id.help_btn_ok);
okBtn.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
dismissHelpDialog();
}
});
dlg.setCancelable(cancelable);
if (cancelable)
{
dlg.setCanceledOnTouchOutside(true);
}
dlg.setOnCancelListener(new OnCancelListener()
{
@Override
public void onCancel(DialogInterface dialog)
{
dismissHelpDialog();
}
});
dlg.setOnDismissListener(new OnDismissListener()
{
@Override
public void onDismiss(DialogInterface dialog)
{
dismissHelpDialog();
}
});
dlg.show();
}
private static void dismissHelpDialog()
{
if (dlg != null)
{
dlg.dismiss();
dlg = null;
}
}
,只需使用後:
Dialog.create(this, "Help Window"), "Help window Text", true);
使用對話框主題的事您的活動,將浮動,與在屏幕的其餘部分暗淡的背景。 – njzk2