1

我创建了一个自定义 AlertDialog,但是图片

它有一个默认的黑色边框。我该如何隐藏它?我的布局

道具 - match_parent,

风格 - @android:style/Theme.Translucent.NoTitleBar.Fullscreen

UPD

@Override
protected Dialog onCreateDialog(int id) {
    AlertDialog.Builder builder = new AlertDialog.Builder(this);
    LayoutInflater inflater = getLayoutInflater();
    View dialoglayout = inflater.inflate(R.layout.dialog_layout, (ViewGroup) getCurrentFocus());
    switch (id) {
    case IDD_RESULT:
        builder.setView(dialoglayout);   
        return builder.create();

xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/dialog_layout_root"
    style="@android:style/Theme.Translucent.NoTitleBar.Fullscreen"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:background="@drawable/dialog_bg"
        android:orientation="vertical" >

    </LinearLayout>

</LinearLayout>
4

2 回答 2

1

边框是由于您可能已将自定义布局(可能已膨胀)设置为对话框的内容视图。
我认为AlertDialogs由(至少)3 种布局组成,一种用于标题,一种用于内容,最后一种用于按钮。所以你看到的小边框可能是按钮的布局。
我不知道如何让它消失,无论如何如果你想要没有那些边框的自定义对话框,你可以创建一个扩展类Activity,并使用@android:style/Theme.Dialog它使它看起来像一个对话框。然后,您可以完全管理您的活动显示/未显示的内容。

于 2012-08-01T12:55:56.417 回答
0

您可以看到的是默认样式AlertDialog,通常因设备而异。我尝试了几次更改它,但我没有成功。所以我所做的是,我使用了超类对话框并创建了我自己的 AlertDialog。

这是我的答案的链接,

https://stackoverflow.com/a/11608468/603744

由于您使用的是自己的布局,我相信它具有相同的价值。

于 2012-08-01T12:59:28.880 回答