0

为我的应用创建弹出窗口时出现问题。我正在尝试显示一个填充我屏幕总大小的弹出窗口。问题是我在左侧得到了 1px 线,但没有填充。

我的弹出 xml:

 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="match_parent"
  android:id="@+id/popup"
 android:layout_height="match_parent"
 android:orientation="vertical" >
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerVertical="true"
    android:layout_marginBottom="20dp"
    android:layout_marginLeft="20dp"
    android:layout_marginRight="20dp"
    android:background="@drawable/popup_round_corners"
    android:orientation="vertical"
    android:padding="5dp" >

    <TextView
        android:id="@+id/textView2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_marginTop="5dp"
        android:text="@string/zm_main_uvod" />
 <Button
        android:id="@+id/close"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="right"
        android:layout_marginTop="10dp"
        android:paddingLeft="3dp"
        android:paddingRight="3dp"
        android:text="Ok" />
</LinearLayout>
</LinearLAyout>

和我显示弹出窗口的功能:

    private void showPopup(final Activity context) {         
       // Inflate the popup_layout.xml
       LinearLayout viewGroup = (LinearLayout)findViewById(R.id.popup);
       LayoutInflater layoutInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
       View layout = layoutInflater.inflate(R.layout.startpopup, viewGroup);

       // Creating the PopupWindow
       final PopupWindow popup = new PopupWindow(context);
       popup.setContentView(layout);
       Display display = getWindowManager().getDefaultDisplay(); 
       int width = display.getWidth();
       int height=display.getHeight();
       popup.setWidth(width+5);
       popup.setHeight(height+5);
       popup.setFocusable(true);
       popup.showAtLocation(layout, Gravity.FILL, 0, 0);
       Button close = (Button) layout.findViewById(R.id.close);
           close.setOnClickListener(new OnClickListener() {

             @Override
             public void onClick(View v) {
               popup.dismiss();
             }
           });
 }

我尝试使用gravity.center 并尝试将偏移量设置为-30,-30,但没有任何反应。有任何想法吗?

4

0 回答 0