Android:api 16将矩形轮廓绘制为填充矩形

Jon*_*Jon 5 java user-interface android

api 21上的以下代码显示了一个矩形的轮廓,黑色边框的宽度为1像素:

<?xml version="1.0" encoding="utf-8"?> 
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
    <stroke android:width="1dp" android:color="#000000" />
    <size android:width="300dp" android:height="50dp"/> 
</shape>
Run Code Online (Sandbox Code Playgroud)

然而,在api 16上,我看到一个坚实的黑色矩形.为什么会这样,是否有解决方法?

编辑:在logcat中我看到连续的消息:

HardwareRenderer? draw surface is valid dirty= Rect(107, 214 - 109, 251)
Run Code Online (Sandbox Code Playgroud)

Mim*_*oli 7

几周前我遇到了同样的问题.我终于添加了一个透明的固体.试试:

<?xml version="1.0" encoding="utf-8"?> 
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
    <stroke android:width="1dp" android:color="#000000" />
    <size android:width="300dp" android:height="50dp"/>
    <solid android:color="@android:color/transparent" />
</shape>
Run Code Online (Sandbox Code Playgroud)