对话框后面的奇怪的白色边框

时间:2014-09-08 06:47:49

标签: java android

我的Android应用程序存在一个奇怪的问题。前段时间我注意到有时在对话框后面有一个奇怪的白色边框:

a busy cat

模拟器和手机都存在问题。在显示几个对话框后,边框似乎消失了。它在我的自定义对话框片段和首选项屏幕上的对话框中都可见。

我没有使用支持库(11是我的最小sdk)。我的手机和模拟器在Android 4.0.4上运行。

任何人都知道发生了什么事?

编辑: 对话框之一的示例代码:

@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
    MainActivity activity = (MainActivity) getActivity();
    LayoutInflater inflater = activity.getLayoutInflater();

    Bundle arguments = getArguments();

    String message = arguments.getString(MESSAGE_BUNDLE_KEY);
    if (message == null) {
        message = getString(R.string.please_wait);
    }

    View dialogView = inflater.inflate(R.layout.dialog_progress, null);
    TextView messageTextView = (TextView) dialogView
            .findViewById(R.id.progress_dialog_message);
    messageTextView.setText(getString(R.string.please_wait));
    messageTextView.setTypeface(activity.getRedkneeFont());
    setRetainInstance(true);

    return new AlertDialog.Builder(getActivity()).setView(dialogView)
            .create();
}

XML:

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

<ProgressBar
    android:id="@+id/progress_dialog_progress_bar"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignParentTop="true"
    android:layout_marginLeft="17dp"
    android:layout_marginTop="17dp" />

<TextView
    android:id="@+id/progress_dialog_message"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignTop="@+id/progress_dialog_progress_bar"
    android:layout_marginLeft="19dp"
    android:layout_marginTop="12dp"
    android:layout_toRightOf="@+id/progress_dialog_progress_bar"
    android:text="Medium Text"
    android:textAppearance="?android:attr/textAppearanceMedium" />

<View
    android:id="@+id/progress_dialog_margin_view"
    android:layout_width="fill_parent"
    android:layout_height="0dp"
    android:layout_alignParentLeft="true"
    android:layout_below="@+id/progress_dialog_progress_bar"
    android:layout_marginTop="17dp"
    android:background="@color/separator_blue" />

编辑: 当我切换到支持库(现在所有片段都从appcompat导入)时,边框消失了。一个错误?

1 个答案:

答案 0 :(得分:1)

尝试将Dialog构造函数的主题应用于Translucent

的setStyle(R.style.Theme.AppCompat.Translucent);