jk *_* jk 5 css android gradient drawable
我想要一些像 CSS 渐变这样的效果
-webkit-gradient(linear, left top, left bottom, color-stop(0%,#f0b7a1), color-stop(50%,#8c3310), color-stop(51%,#752201), color-stop(100%,#bf6e4e));
Run Code Online (Sandbox Code Playgroud)
我的android xml可绘制代码如下:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient
android:startColor="@color/transparent"
android:centerColor="#33b5e5"
android:endColor="@color/transparent"
android:angle="90"/>
</shape>
Run Code Online (Sandbox Code Playgroud)
所以我想要实现的是增加这样的百分比:
<gradient
android:startColor="@color/transparent"
android:25%="#09c"
android:centerColor="#33b5e5"
android:75%="#09c"
android:endColor="@color/transparent"
android:angle="90"/>
Run Code Online (Sandbox Code Playgroud)
任何方法我都可以做到这一点?
不可能用百分比来实现,但您可以使用重叠渐变来实现结果。
您需要稍微调整一下scaleY和 颜色以使其与您的示例相匹配,但方法应该很简单。您使用垂直偏移将多个透明 -> 颜色 -> 透明渐变分层。
这是 XML
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item><shape>
<solid android:color="@android:color/white" />
</shape></item>
<item><shape>
<gradient
android:startColor="@android:color/holo_purple"
android:centerColor="@android:color/transparent"
android:endColor="@android:color/transparent"
android:centerY="0.4"
/>
</shape></item>
<item><shape>
<gradient
android:startColor="@android:color/transparent"
android:centerColor="@android:color/holo_orange_light"
android:endColor="@android:color/transparent"
android:centerY="0.4"
/>
</shape></item>
<item><shape>
<gradient
android:startColor="@android:color/transparent"
android:centerColor="@android:color/holo_blue_light"
android:endColor="@android:color/transparent"
android:centerY="0.7"
/>
</shape></item>
<item><shape>
<gradient
android:startColor="@android:color/transparent"
android:centerColor="@android:color/transparent"
android:endColor="@android:color/holo_green_dark"
/>
</shape></item>
</layer-list>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1224 次 |
| 最近记录: |