popup window is not properly shown in android L
Asked Answered
F

1

1

this is how it looks like on android L :

enter image description here

where as on jelly bean it looks like :

enter image description here

here is layout xml file:

<?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> 

and code for popup window :

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);

I don't understand what I am doing wrong.Please Help.

Formosa answered 5/2, 2015 at 9:54 Comment(3)
You should be using a Dialog for that.Elsaelsbeth
@alanv: is there any specific reason for that?Formosa
You're doing a lot of tweaking to make a PopupWindow look and act like a dialog, and you could avoid that by just using a real AlertDialog or Dialog.Elsaelsbeth
F
2

I have the following line in my value-21's style.xml

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

This was the problem for me. But I cannot remove this line because of the reason which I explain here

so I added android:fitsSystemWindows="false" in each view of PopupWindow layout.

vooolaaaa!!! solved.

Formosa answered 5/2, 2015 at 15:17 Comment(1)
Do you know why this fixes it?Thirtytwo

© 2022 - 2024 — McMap. All rights reserved.