您的位置:首页 > 移动开发 > Android开发

Android代码设置Shape,corners,Gradient

2016-03-14 13:48 381 查看
int strokeWidth = 5; // 3dp 边框宽度

    int roundRadius = 15; // 8dp 圆角半径

    int strokeColor = Color.parseColor("#2E3135");//边框颜色

    int fillColor = Color.parseColor("#DFDFE0");//内部填充颜色

    GradientDrawable gd = new GradientDrawable();//创建drawable

    gd.setColor(fillColor);

    gd.setCornerRadius(roundRadius);

    gd.setStroke(strokeWidth, strokeColor);

setBackgroundDrawable(gd);

但是如果想设置Gradient的渐变色该咋办呢?

方法是改变GradientDrawable的创建方法:

int colors[] = { 0xff255779 , 0xff3e7492, 0xffa6c0cd };//分别为开始颜色,中间夜色,结束颜色 GradientDrawable gd = new GradientDrawable(GradientDrawable.Orientation.TOP_BOTTOM, colors);
但是如果想设置Gradient的渐变色该咋办呢?

方法是改变GradientDrawable的创建方法:

int colors[] = { 0xff255779 , 0xff3e7492, 0xffa6c0cd };//分别为开始颜色,中间夜色,结束颜色

GradientDrawable gd = new GradientDrawable(GradientDrawable.Orientation.TOP_BOTTOM, colors);
参考:
http://stackoverflow.com/questions/17667964/how-to-create-shape-with-solid-corner-stroke-in-java-code

http://stackoverflow.com/questions/4177401/gradientdrawable-in-code

http://www.iteye.com/topic/1117635


                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Android Android Studio