Android Shape - Gradient应该转到右侧

saf*_*ari 3 layout android shape android-layout

我尝试做什么


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


我需要更改我的形状或渐变这是否有效?


<?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>
Run Code Online (Sandbox Code Playgroud)

图片


这就是它当下的样子!

在此输入图像描述

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

Hir*_*ral 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>
Run Code Online (Sandbox Code Playgroud)

标签android:centerX,android:centerY让你从屏幕上的任何一点开始你的渐变.你只需要像我在这里给出相关的%值.它对我来说就像魔术一样!

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

希望,它有所帮助.