2013-10-04 2 views
0

Я стараюсь, чтобы мое изображение имело радиальный градиентный фон, идущий от сплошного белого до прозрачного белого снаружи. Вот мое определение SHAPE, которое я использую в качестве фона ImageView. Проблема заключается в том, что я в конечном итоге с твердым белым кругом на моем фоне, а не полу прозрачные края, как я хочу:Радиальный градиент Android ImageView похож на прожектор?

<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

Хорошо, я понял. У меня было две ошибки: первое, что проценты не поддерживаются в gradientRadius, а второе - первые два места в startColor и endColor - это значения прозрачности. Это AARRGGBB не RRGGBBAA. Вот фиксированное определение формы:

<?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> 
Смежные вопросы