1

当我试图关闭按下的关闭按钮上的对话框时,问题就开始了。

我无法让它与我原来的方法一起工作,所以我尝试了这个,它在显示时对话框周围有一个奇怪的边框。

这是对话框类:

package com.Pivotl.PostcardsFromAlaska;

import android.app.AlertDialog;
import android.app.Dialog;
import android.app.DialogFragment;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;

public class PFADialogFragment extends DialogFragment {
    static PFADialogFragment newInstance() {
        PFADialogFragment f = new PFADialogFragment();
        return f;
    }

    @Override
    public Dialog onCreateDialog(Bundle savedInstanceState) {
        //getting proper access to LayoutInflater is the trick
        LayoutInflater inflater = getActivity().getLayoutInflater();

        View view = inflater.inflate(R.layout.enter_actions, null);
        //propManager = new PropManager(getSherlockActivity());
        AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
        builder.setView(view);
        return builder.create();
    }

}

对话框视图:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:padding="3dp" >

    <LinearLayout
        android:id="@+id/linearLayout1"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_centerInParent="true"
        android:layout_marginRight="166dp"
        android:background="@layout/roundedshape"
        android:orientation="vertical"
        android:paddingBottom="10dp"
        android:paddingLeft="5dp"
        android:paddingRight="5dp" >

        <Button
            android:id="@+id/closeButton"
            android:layout_width="30dp"
            android:layout_height="30dp"
            android:layout_marginBottom="20dp"
            android:layout_marginLeft="135dp"
            android:layout_marginTop="5dp"
            android:background="@drawable/close2x"
            android:onClick="closeButtonClick" />

        <Button
            android:id="@+id/takePictureButton"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginBottom="10dp"
            android:background="@drawable/big_button2x"
            android:onClick="takePictureButtonClick" />

        <Button
            android:id="@+id/photoGalleryButton"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginBottom="10dp"
            android:background="@drawable/big_button2x"
            android:onClick="photoGalleryButtonClick" />

        <Button
            android:id="@+id/artistGalleryButton"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginBottom="10dp"
            android:background="@drawable/big_button2x"
            android:onClick="artistGalleryButtonClick" />

    </LinearLayout>

</RelativeLayout>

我访问并在protected void onCreate(Bundle savedInstanceState)使用时显示它:

    if(!diagShowing)
   {
    showDialog();
   }

但是当它显示它看起来像下面这样: 白色边框

为什么它会显示这个边框,我怎样才能让它只显示我的视图?

任何帮助,不胜感激!!

4

2 回答 2

0

在 onCreate 中调用方法,如:

@Override public void onCreate(Bundle savedInstanceState) {

          super.onCreate(savedInstanceState);
          setStyle(STYLE_NO_FRAME,0);

}

于 2013-08-01T01:51:39.520 回答
0

添加transparent background到您的RelativeLayout例如:

android:background="@android:color/transparent"

或者

android:background="#00000000"

或者你也可以为你的自定义对话框创建一个主题

于 2013-08-01T01:18:37.790 回答