编写style.xml实现一个矩形,矩形为圆角、渐变色Word格式.docx
- 文档编号:13118732
- 上传时间:2022-10-05
- 格式:DOCX
- 页数:3
- 大小:9.48KB
编写style.xml实现一个矩形,矩形为圆角、渐变色Word格式.docx
《编写style.xml实现一个矩形,矩形为圆角、渐变色Word格式.docx》由会员分享,可在线阅读,更多相关《编写style.xml实现一个矩形,矩形为圆角、渐变色Word格式.docx(3页珍藏版)》请在冰豆网上搜索。
*@date2016-4-26下午3:
47:
12
*/
publicclassRoundRectsActivityextendsActivity{@Override
protectedvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(newRoundRectView(this));
}
privatestaticclassRoundRectViewextendsView{
//Rect类主要用于表示坐标系中的一块矩形区域
privateRectmRect;
//GradientDrawable支持使用渐变色来绘制图形,通常可以用作Button或是背景图形
privateGradientDrawablemDrawable;
publicRoundRectView(Contextcontext){
super(context);
setFocusable(true);
initView();
*初始化数据
56:
06
privatevoidinitView(){
mRect=newRect(0,0,240,240);
//orientation指定了渐变的方向,int[]colors指定渐变的颜色由colors数组指定,数组中的每个值为一个颜色。
mDrawable=newGradientDrawable(GradientDrawable.Orientation.TL_BR,newint[]{0xFFFF0000,
0xFF00FF00,0xFF0000FF});
//设置Drawable的形状为矩形
mDrawable.setShape(GradientDrawable.RECTANGLE);
//设置渐变的半径
mDrawable.setGradientRadius((float)(Math.sqrt
(2)*120));
*置图片四个角圆形半径
*@date2016-4-26下午4:
08:
17
staticvoidsetCornersRadii(GradientDrawabledrawable,floatr0,floatr1,floatr2,floatr3){
//设置图片四个角圆形半径:
1、2两个参数表示左上角,3、4表示右上角,5、6
表示右下角,7、8表示左下角
drawable.setCornerRadii(newfloat[]{r0,r0,r1,r1,r2,r2,r3,r3});
@Override
protectedvoidonDraw(Canvascanvas){mDrawable.setBounds(mRect);
floatr=16;
canvas.save();
canvas.translate(10,10);
//画面平移
//设置渐变模式:
线性渐变mDrawable.setGradientType(GradientDrawable.LINEAR_GRADIENT);
setCornersRadii(mDrawable,r,r,0,0);
mDrawable.draw(canvas);
canvas.restore();
canvas.translate(10+mRect.width()+10,10);
径抽渐变mDrawable.setGradientType(GradientDrawable.RADIAL_GRADIENT);
setCornersRadii(mDrawable,0,0,r,r);
canvas.translate(0,mRect.height()+10);
颜色渐变方向非环形,而是以某点为圆心呈扇形扫过。
mDrawable.setGradientType(GradientDrawable.SWEEP_GRADIENT);
setCornersRadii(mDrawable,0,r,r,0);
mDrawable.setGradientType(GradientDrawable.LINEAR_GRADIENT);
setCornersRadii(mDrawable,r,0,0,r);
canvas.restore();
mDrawable.setGradientType(GradientDrawable.RADIAL_GRADIENT);
setCornersRadii(mDrawable,r,0,r,0);
mDrawable.setGradientType(GradientDrawable.SWEEP_GRADIENT);
setCornersRadii(mDrawable,0,r,0,r);
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 编写 style xml 实现 一个 矩形 渐变