我正在尝试让我的imageview有一个径向渐变背景,从外面的纯白色到透明的白色。这是我用作ImageView背景的SHAPE定义。问题是我最终得到了一个背景为白色的圆圈,而不是我想要的半透明边缘:
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient
android:startColor="#ffffff00"
android:endColor="#ffffffff"
android:centerX="50%"
android:centerY="50%"
android:gradientRadius="50%"
android:type="radial"/>
<corners
android:bottomRightRadius="20dp"
android:bottomLeftRadius="20dp"
android:topLeftRadius="20dp"
android:topRightRadius="20dp"/>
答案 0 :(得分:1)
好的,我明白了。我有两个错误:第一个是gradientRadius不支持百分比,第二个是startColor和endColor中前两个位置是透明度值。这是AARRGGBB而不是RRGGBBAA。这是固定的Shape定义:
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient
android:startColor="#ffffffff"
android:endColor="#00ffffff"
android:gradientRadius="36"
android:type="radial"/>
<corners
android:bottomRightRadius="20dp"
android:bottomLeftRadius="20dp"
android:topLeftRadius="20dp"
android:topRightRadius="20dp"/>
</shape>