Android可绘制背景角不删除

Posted

技术标签:

【中文标题】Android可绘制背景角不删除【英文标题】:Android drawable background corner not remove 【发布时间】:2016-05-24 11:48:24 【问题描述】:

我在我们的 xml 布局中应用了一个可绘制的背景,但它也包含边框如何删除它?

当我放置角时,它会应用角,但不会将角应用于整个布局(意味着内容不会超出边界区域)。

这是我的可绘制文件

<?xml version="1.0" encoding="utf-8"?>
<shape
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">

<solid
    android:color="#fff">

</solid>

<stroke
    android:
    android:color="@color/block_button_bg">

</stroke>

<corners
    android:radius="10dp">

</corners>


</shape>

这是我的 xml 布局

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_
android:layout_
android:layout_gravity="center"
android:orientation="vertical"
android:background="@drawable/custom_dialog_bg">

<TextView
    android:id="@+id/txtDiaTitle"
    android:layout_
    android:layout_
    android:text="@string/app_dialog_title"
    android:textColor="@color/black"
    android:textStyle="bold"
    android:gravity="center"
    android:padding="8dp"
    android:textAppearance="@android:style/TextAppearance.Medium"/>

<TextView
    android:id="@+id/txtDiaMsg"
    android:layout_
    android:layout_
    android:gravity="center"
    android:padding="6dp"
    android:layout_gravity="center"
    android:layout_marginBottom="10dp"
    android:text="@string/app_dialog_desc"
    android:textColor="@color/black"
    android:textSize="12sp"/>

<View
    android:layout_
    android:layout_
    android:background="@color/alarm_color"
    />

<LinearLayout
    android:layout_
    android:layout_
    android:orientation="horizontal">

    <TextView
        android:id="@+id/yes"
        android:layout_
        android:layout_
        android:layout_weight="1"
        android:gravity="center"
        android:text="@string/yes"
        android:textColor="#0C76EE"
        android:textStyle="bold"
        android:padding="5dp"
        android:clickable="true"
        android:layout_margin="5dp" />

    <View
        android:layout_
        android:layout_
        android:background="@color/alarm_color"
        />

    <TextView
        android:id="@+id/no"
        android:layout_
        android:layout_
        android:layout_weight="1"
        android:gravity="center"
        android:text="@string/no"
        android:textColor="#0C76EE"
        android:textStyle="bold"
        android:padding="5dp"
        android:clickable="true"
        android:layout_margin="5dp" />

    </LinearLayout>

</LinearLayout>

有什么想法吗?

【问题讨论】:

【参考方案1】:

你能试试下面的吗?

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle" >

    <solid android:color="@android:color/white" />

    <corners android:radius="10dip" />

    <stroke
        android:
        android:color="@android:color/white" />

</shape>

希望这会对你有所帮助。

【讨论】:

@UjjwalJha,请查看***.com/questions/16161448/… 当我看到我们的 Android Studio 预览时,之前和新的代码都显示了良好的布局。但是当我在我们的布局中应用这个drawable并检查时,就会出现这个问题。你能检查我的 xml 布局代码吗? @UjjwalJha,让我检查并告诉你。 我猜你从来没有检查过 我笑了。【参考方案2】:

你做的每一件事都很好。但是您必须为您的对话框使用透明主题,或者将对话框的背景窗口设置为透明。 像这样:

dialog.getWindow().setBackgroundDrawable(new       ColorDrawable(android.graphics.Color.TRANSPARENT));

或使用this link。

【讨论】:

以上是关于Android可绘制背景角不删除的主要内容,如果未能解决你的问题,请参考以下文章

如何为我在 Android 中用作背景的可绘制对象添加圆角?

包括一个背景可绘制的 foobars 我在 Android 中的布局。想法为啥?

如何在 Android 中以编程方式设置背景可绘制对象

Android Button 背景无法识别/使用可绘制对象

如何将可绘制背景设置为仅将数字字符串转换为 android 中的另一个字符串?

如何在android中改变可绘制形状的颜色