Android Shape - Gradient应该转到右侧

时间:2012-03-01 09:44:51

标签: android layout android-layout shape

我尝试做什么


我正在尝试为我的应用创建一个Backgroud-Shape。为此我创建了一个渐变女巫从中间开始,但我希望它从右侧开始。你可以想象你这就像渐变来自右侧。

问题


我需要在Shape或Gradient中更改这项工作吗?

代码


<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">



    <gradient android:gravity="right" android:type="radial" android:gradientRadius="280"
        android:startColor="#FFFFFF" android:endColor="#CBCBCB" /><!--   #e0dede" -->
</shape>

图片


这就是当下的样子!

enter image description here

就像你看到渐变在中间,我希望这个渐变从右侧开始到屏幕中间。

1 个答案:

答案 0 :(得分:11)

试试这个看魔术:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">

    <gradient android:layout_gravity="right" android:type="radial" android:gradientRadius="280"
        android:centerX="100%" android:centerY="50%"
        android:startColor="#FFFFFF" android:endColor="#CBCBCB" /><!--   #e0dede" -->
</shape>

标签android:centerXandroid:centerY可让您从屏幕上的任意位置开始渐变。您只需要像我在这里一样提供相关的%值。它对我来说就像魔术一样!

我没有更改代码的其他代码设置,但您必须根据需要显示的白色部分来更改半径。

希望,它有所帮助。