安卓系统:不同版本的安卓系统中,圆角的处理方式有所不同

6

我有一个与角标签相关的问题。

这是我的形状文件。

<stroke
    android:width="1dp"
    android:color="#ff999999" />

<size android:height="40dp" />

<gradient
    android:angle="90"
    android:centerColor="#f5f5f5"
    android:endColor="#fcfcfc"
    android:startColor="#efefef"
    android:type="linear" />

<corners
    android:bottomLeftRadius="0dip"
    android:bottomRightRadius="8dip"
    android:topLeftRadius="8dip"
    android:topRightRadius="0dip" />

但是当我将其设置为视图的背景时,在Android 2.2和Android 4.0.3中显示的形状不同。 在运行Android 4.0.3时:运行于Android 4.0.3 而在Android 2.2上:运行于Android 2.2 请看"ANNOUNCE"按钮。 你知道为什么吗?我该如何解决? 请帮帮我! 抱歉,我的英语不太好。

Android 4.3不存在。当前版本为4.1.1。 - Ryan Gray
是的,抱歉。我指的是4.0.3。 - gZerone
1个回答

13

这是SDK API 12版本之前的一个错误,其中左下和右下角半径颠倒了。您可以执行以下操作(更多信息请参见此链接),创建一个res/drawable-v12文件夹,并将这些可绘制对象复制到其中并翻转半径(即左下角半径变为右下角半径,反之亦然),这些可绘制对象将自动选择适用于API 12及以上设备。


谢谢Kcoppock。这对我非常有用。 - gZerone

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接