它是Android中的BUG吗?运行Nougat的Axon 7对话框中的奇怪UI问题

时间:2018-01-10 10:28:16

标签: android android-layout dialog android-7.0-nougat android-7.1-nougat

简短问题是:

在运行Nougat的Axon 7中,它在dialog的底部添加了一些额外的空间。见下图。

完整问题:

我正在尝试一个用户界面问题,我正面临着运行Android 7(Nougat)的Axon 7手机。但是它在其他手机上运行良好,比如Moto G.

我正在显示一个包含以下代码的简单对话框,

Dialog dialog = new Dialog(MainActivity.this);
dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
dialog.setContentView(R.layout.dialog);
dialog.show();

XML布局如下

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

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:minHeight="150dp"
        android:orientation="vertical">

        <TextView
            android:id="@+id/text1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="ARE YOU SURE?"
            android:textSize="18sp" />

        <TextView
            android:id="@+id/text2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="You want to logout" />

    </LinearLayout>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:weightSum="1">

        <TextView
            android:id="@+id/no"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:background="#000000"
            android:gravity="center"
            android:padding="10dp"
            android:text="No"
            android:textColor="#FFFFFF"
            android:textSize="18sp" />

        <TextView
            android:id="@+id/yes"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:background="#FF0000"
            android:gravity="center"
            android:padding="10dp"
            android:text="No"
            android:textColor="#000000"
            android:textSize="18sp" />
    </LinearLayout>
</LinearLayout>

见下面的输出:

enter image description here

但是,如果我在第二个TextView中将文本从否改为(布局中没有其他更改,只是将文本从否更改为是),则输出为

enter image description here

您可以看到它在对话框底部添加了空格。我无法理解为什么会这样?这是Android中的错误还是什么?

P.S。

如果我将android:layout_weight="1"同时提供给TextViews而不是android:layout_weight="0.5"

,就不会发生这种情况

感谢。

0 个答案:

没有答案