首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >代码中的GradientDrawable?

代码中的GradientDrawable?
EN

Stack Overflow用户
提问于 2018-03-30 08:35:26
回答 1查看 0关注 0票数 0

我可以很好地使用下面的XML

代码语言:javascript
复制
<shape android:shape="rectangle" xmlns...">
     <gradient
         android:startColor="#255779"
         android:centerColor="#3e7492"
         android:endColor="#a6c0cd"
         android:angle="90"/>

    <stroke android:width="1dp" android:color="#0d202e"/>
</shape>

渐变效果很好

我正在尝试使用代码做同样的事情(没有XML)

代码语言:javascript
复制
int colors [] = {0xff255779,0xff3e7492,0xffa6c0cd};

GradientDrawable g = new GradientDrawable(GradientDrawable.Orientation.TOP_BOTTOM,colors);

setBackgroundDrawable(克);

渐变出现了,但它不同于XML中的那个,我的意思是颜色相同但梯度不一样,我认为它与xml中的开始,中间和结束颜色有关

EN

回答 1

Stack Overflow用户

发布于 2018-03-30 17:52:48

根据Docs

android:angle Integer。渐变的角度,以度为单位。0从左到右,90从下到上。它必须是45的倍数。默认值是0

但你正在使用GradientDrawable.Orientation。你的代码中的TOP_BOTTOM。这就是为什么梯度方向不同

你应该使用GradientDrawable.Orientation。改为BOTTOM_TOP

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100007884

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档