如何在Android中全屏显示警报对话框?

时间:2016-07-23 17:10:36

标签: android fullscreen alertdialog

如何在Android中全屏显示警报对话框?

4 个答案:

答案 0 :(得分:19)

尝试以下代码

AlertDialog.Builder alertDialog = new AlertDialog.Builder(this,android.R.style.Theme_Black_NoTitleBar_Fullscreen);

答案 1 :(得分:11)

您必须为对话框创建自定义样式

你的style.xml中的

 <style name="DialogTheme" parent="android:Theme.Dialog">

    <item name="android:layout_width">fill_parent</item>
    <item name="android:layout_height">fill_parent</item>   
    <!-- No backgrounds, titles or window float -->
    <item name="android:windowBackground">@null</item>
    <item name="android:windowNoTitle">true</item>
    <item name="android:windowIsFloating">false</item>
</style>

在给对话框充气时设置此主题

dialog = new Dialog(this, R.style.DialogTheme);

答案 2 :(得分:3)

【方法一|使用自定义样式]

在样式文件中:

AlertDialog.Builder dialogBuilder = new AlertDialog.Builder(getActivity(), R.style.myFullscreenAlertDialogStyle);   //second argument

在Java文件中:

AlertDialog.Builder dialogBuilder = new AlertDialog.Builder(getActivity(), android.R.style.Theme_Material_Light_NoActionBar_Fullscreen);

【方法2 |使用内置样式]

在Java文件中:

dialog.getButton().setTextColor()
  • 此方法将使按钮文本变为绿色,您可以使用eric进行更改。

答案 3 :(得分:2)

如果你使用DialogFragment构建AlertDialog,你可以在onResume()的LayoutParams上设置MATCH_PARENT:

@Override
public void onResume() {
    super.onResume();
    ViewGroup.LayoutParams params = getDialog().getWindow().getAttributes();
    params.width = WindowManager.LayoutParams.MATCH_PARENT;
    params.height = WindowManager.LayoutParams.MATCH_PARENT;
    getDialog().getWindow().setAttributes((android.view.WindowManager.LayoutParams) params);
}