为什么AlertDialog.Builder为自定义布局(Tablelayout)显示半空对话框

时间:2016-03-03 14:44:39

标签: android android-layout alertdialog

我在alertDialog中使用自定义布局,但问题是它在半屏幕中显示我的布局文件的内容而另一半只是空白 - (我不知道这个黑色部分来自哪里),我想删除对话框的空白部分。

任何建议或帮助都会感激不尽。

我的alterDialog代码

LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View view = inflater.inflate(R.layout.dialog_layout, null);
final AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setView(view);

dialog_layout.xml的布局

    <?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:background="@android:color/background_dark">

    <TableRow
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="1dp" />

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="1dp"
            android:text="SCAN ASSEMBLY"
            android:textAppearance="?android:attr/textAppearanceLarge" />
    </TableRow>

    <TableRow
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:padding="3dp">

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginRight="8dp"
            android:text="Scan job"
            android:textAppearance="?android:attr/textAppearanceLarge"
            android:textColor="@color/dark_text_color" />

        <TextView
            android:id="@+id/lot_id"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="2342wt"
            android:textAppearance="?android:attr/textAppearanceLarge"
            android:textColor="@color/light_black_text_color" />
    </TableRow>

    <TableRow
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:padding="3dp">

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_marginRight="8dp"
            android:text="Scan assembly"
            android:textAppearance="?android:attr/textAppearanceLarge"
            android:textColor="@color/dark_text_color" />

        <TextView
            android:id="@+id/product_id"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:text="2342wt"
            android:textAppearance="?android:attr/textAppearanceLarge"
            android:textColor="@color/light_black_text_color" />
    </TableRow>

    <TableRow
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:padding="3dp">


        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_marginRight="8dp"
            android:text="Job quantity"
            android:textAppearance="?android:attr/textAppearanceLarge"
            android:textColor="@color/dark_text_color" />

        <TextView
            android:id="@+id/lot_value"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:text="2342wt"
            android:textAppearance="?android:attr/textAppearanceLarge"
            android:textColor="@color/light_black_text_color" />
    </TableRow>

    <TableRow
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:padding="3dp">

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_marginRight="8dp"
            android:text="Prod. time (hrs)"
            android:textAppearance="?android:attr/textAppearanceLarge"
            android:textColor="@color/dark_text_color" />

        <TextView
            android:id="@+id/time_value"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:text="2342wt"
            android:textAppearance="?android:attr/textAppearanceLarge"
            android:textColor="@color/light_black_text_color" />
    </TableRow>

    <TableRow
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:padding="3dp">

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_marginRight="8dp"
            android:text="Prod. date"
            android:textAppearance="?android:attr/textAppearanceLarge"
            android:textColor="@color/dark_text_color" />

        <TextView
            android:id="@+id/date_value"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:text="2342wt"
            android:textAppearance="?android:attr/textAppearanceLarge"
            android:textColor="@color/light_black_text_color" />
    </TableRow>

    <TableRow
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:padding="3dp">

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginRight="8dp"
            android:text="Prod. shift"
            android:textAppearance="?android:attr/textAppearanceLarge"
            android:textColor="@color/dark_text_color" />

        <TextView
            android:id="@+id/shift_value"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="2342wt"
            android:textAppearance="?android:attr/textAppearanceLarge"
            android:textColor="@color/light_black_text_color" />
    </TableRow>
</TableLayout>

,输出为: enter image description here

1 个答案:

答案 0 :(得分:1)

好吧,我弄明白了这个问题。感谢Khizar和Arthem Chauzov的帮助评论。 我只是进行了一些小改动,因为table layout继承自LinearLayout。我只是为我的行内容设置了android:layout_width="0dp" and android:layout_weight="1"。现在它按要求工作:)