Android径向渐变

时间:2012-05-27 14:57:02

标签: android background drawable gradient radial

我有一个可绘制的集合作为LinearLayout背景:

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
   <item>
      <bitmap
         android:tileMode="repeat"
         android:dither="true"
         android:src="@drawable/bg"/>
   </item>


   <item>
      <shape android:shape="rectangle">
         <gradient
            android:startColor="#ffff0000"
            android:endColor="#ff00ff00"
            android:centerX="50%"
            android:centerY="50%"
            android:gradientRadius="50%"
            android:type="radial"/>
      </shape>
   </item>
</layer-list>

根据docs,gradientRadius可以设置为窗口/父级大小的百分比。不幸的是......它不起作用。半径是0.我做错了什么?或Android有什么问题?

我需要径向渐变来填充整个屏幕。什么是解决方法?

2 个答案:

答案 0 :(得分:12)

有点晚了,但根据文档,你必须设置“50%p”,而不是“50%”。 (注意'p'表示'父')

答案 1 :(得分:5)

如果我理解你需要什么,你必须制作以drawable引用的布局

(“match_parent”),

如下:

 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:orientation="vertical" 
     android:background="@drawable/"your drawable xml name">
希望这有帮助。