android - 弹出窗口未在 android L 中正确显示

标签 android performance android-layout android-5.0-lollipop android-popupwindow

这是它在 android L 上的样子:

enter image description here

在果冻 bean 上它看起来像:

enter image description here

这是布局 xml 文件:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:customfont="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:background="@color/black_bg_dialog"
    android:layout_height="match_parent">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_marginRight="30dp"
        android:layout_marginLeft="30dp"
        android:layout_centerInParent="true"
        android:layout_height="wrap_content"
        android:padding="10dp"
        android:orientation="vertical"
        android:background="@color/enquiry_bg">

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:textColor="@color/enquiry_text_top"
            customfont:customTypeface="fonts/Roboto-Light.ttf"
            android:text="@string/contact_us" />

        <EditText
            android:id="@+id/et_name"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="@drawable/name"
            android:ellipsize="end"
            android:hint="@string/contact_hint_name"
            android:inputType="text"
            android:singleLine="true"
            android:textColor="@color/enquiry_text"
            android:layout_marginTop="20dp"
            android:textColorHint="@color/enquiry_text_hint"
            android:textSize="18sp" />

        <EditText
            android:id="@+id/et_email"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="@drawable/email"
            android:ellipsize="end"
            android:hint="@string/contact_hint_email"
            android:inputType="textEmailAddress"
            android:singleLine="true"
            android:textColor="@color/enquiry_text"
            android:layout_marginTop="20dp"
            android:textColorHint="@color/enquiry_text_hint"
            android:textSize="18sp" />

        <EditText
            android:id="@+id/et_phone"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="@drawable/phonenumber"
            android:ellipsize="end"
            android:hint="@string/contact_hint_phone"
            android:inputType="phone"
            android:singleLine="true"
            android:textColor="@color/enquiry_text"
            android:layout_marginTop="20dp"
            android:textColorHint="@color/enquiry_text_hint"
            android:textSize="18sp" />

        <FrameLayout
            android:id="@+id/fl_send"
            android:layout_width="match_parent"
            android:background="@color/enquiry_send_bg"
            android:layout_marginTop="20dp"
            android:layout_gravity="center"
            android:padding="10dp"
            android:layout_height="wrap_content">

            <TextView
                android:id="@+id/btn_submit"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:drawablePadding="20dp"
                android:drawableRight="@drawable/sendbutton"
                android:text="@string/contact_btn_submit"
                android:textColor="@color/white"
                android:layout_gravity="center"
                android:gravity="center"
                customfont:customTypeface="fonts/Roboto-Regular.ttf"
                android:textSize="23sp" />

        </FrameLayout>

    </LinearLayout>

    <RelativeLayout
        android:id="@+id/rl_progress_layout"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@color/loading_alpha"
        android:visibility="gone">

        <ImageView
            android:id="@+id/iv_progress_icon"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" />
    </RelativeLayout>
</RelativeLayout> 

弹出窗口的代码:

View popUpView = activity.getLayoutInflater().inflate(R.layout.dialog_contact_us, null);

        enquiryPopUp = new PopupWindow(popUpView, RelativeLayout.LayoutParams.MATCH_PARENT, RelativeLayout.LayoutParams.MATCH_PARENT, true);
        enquiryPopUp.setBackgroundDrawable(new BitmapDrawable(null, ""));
        enquiryPopUp.setAnimationStyle(android.R.style.Animation_Dialog);
        enquiryPopUp.showAtLocation(popUpView, Gravity.CENTER, 0, 0);

我不明白我做错了什么。请帮忙。

最佳答案

我的 value-21 的 style.xml 中有以下行

<item name="android:fitsSystemWindows">true</item>

这就是我的问题。但由于我解释的原因,我无法删除此行 here

所以我在 PopupWindow 布局的每个 View 中添加了 android:fitsSystemWindows="false"

呜呜呜!!!解决了。

关于android - 弹出窗口未在 android L 中正确显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28340878/

相关文章:

android - 如何在布局中设置 ListView

MYSQL 加速查询

html - 优化 CSS 交付 - Google 的一项建议

android - Recyclerview 上的加速滚动

android - 以编程方式 : Android ListView at top and EditText & Button at bottom

java - 如何以编程方式限制下载速度?

c# - 将 for 循环与 if 和 else 结合使用

android - 如何创建中间带有 Logo 的二维码

perl - 如何避免重新处理已经在我的 Perl 脚本中处理过的输入?

java - TableRow 未显示在 TableLayout 中