12

我正在我的 Nexus 5 上测试 Android L Preview。我的应用程序有问题。

我有一些带有背景设置的 TextView:

android:background="@drawable/rounded_textview"

而“rounded_textview”只是形状。它在 <=API19 下运行良好。

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" android:padding="3dp">
<solid android:color="#999999"/>
<corners
 android:bottomRightRadius="2dp"
 android:bottomLeftRadius="2dp"
 android:topLeftRadius="2dp"
 android:topRightRadius="2dp"/>
</shape>

在 Android L 开发者预览版中,背景被忽略。我所有的 TextView 都是透明的。知道我在做什么错吗?

4

2 回答 2

36

我发现将形状包装在选择器和项目标签中使其工作

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item>
        <shape android:shape="rectangle">

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

            <corners
                android:bottomLeftRadius="3dp"
                android:topRightRadius="3dp"
                android:topLeftRadius="3dp"
                android:bottomRightRadius="3dp" />

        </shape>
    </item>
</selector>
于 2014-06-27T02:01:12.937 回答
0

只需使用 android:radius,而不是使用每个角选项。我有同样的问题,但我能够使用这种方式解决问题。

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" android:padding="3dp">
<solid android:color="#999999"/>
  <corners android:radius="2dp"/>
</shape>
于 2014-06-27T01:59:05.877 回答