AlertDialog:保证金最高

时间:2016-10-27 15:28:44

标签: android android-support-library alertdialog

我的AlertDialog显示在顶部有额外的边距,没有我声明它。

import android.support.v7.app.AlertDialog;    

AlertDialog.Builder builder = new AlertDialog.Builder(this.act);
builder.setView(R.layout.dialog_progress);
builder.setCancelable(false);
builder.setNegativeButton(R.string.cancel, null);
builder.create().show();

dialog_progress.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:gravity="center"
          android:orientation="horizontal">

   <ProgressBar
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:indeterminate="true"
        android:indeterminateTint="@color/colorPrimary"/>

    <TextView
        style="@style/TextView.Medium"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="20dp"
        android:text="@string/fetching_location"/>
</LinearLayout>

enter image description here

我的应用程序的其他对话框看起来很好。

2 个答案:

答案 0 :(得分:3)

在搜索了几个小时后,我终于找到了为什么我的对话框布局如此奇怪:

AndroidStudio从包android.support.v7.app导入AlertDialog。我在我的应用中使用的其他对话框是从包android.app导入的。更改导入后,一切看起来都很好:

enter image description here (改变了重力并添加了一些轻微的填充)

也许这会帮助每个人遇到同样的问题。

答案 1 :(得分:0)

使用windowNoTitle:

  1. 为AlertDialog创建样式:
    <style name="AlertDialogCustom" parent="@android:style/Theme.Dialog">
        <item name="android:windowNoTitle">true</item>
        <item name="android:background">#ffffff</item>
        <item name="android:textColorPrimary">#000000</item>
        <item name="android:textColor">@000000</item>
        <item name="android:typeface">monospace</item>
        <item name="android:textSize">12sp</item>
    </style>
  1. 在创建AlertDialog时定义此样式

    AlertDialog.Builder builder =新的AlertDialog.Builder(container.getContext(),R.style.AlertDialogCustom);