安卓开发---11AndroidUI美化
Android原⽣画图
Canvash画布 paint画笔
1.写⼀个类继承view 重写三个构造⽅法和ondraw⽅法 准备画笔paint
canvas.drawArc ();画扇形;
canvas.drawCircle();画圆
canvas.drawOval();画椭圆
canvas.drawLine();画线
canvas.drawPoint();画点
canvas.drawRect();画矩形
canvas.drawRoundRect();画圆⾓矩形
canvas.drawVertices();画顶点
canvas.drawPath();画路径
canvas.drawBitmap();画位图
canvas.drawText();画⽂字
Android在⽤画笔的时候有三种Style,分别是
Paint.Style.STROKE 只绘制图形轮廓(描边)
Paint.Style.FILL 只绘制图形内容
Paint.Style.FILL_AND_STROKE 既绘制轮廓也绘制内容
private Paint paint =new Paint();
//当Java代码中创建MyView时调⽤,如setContentView(new MyView(this))
public MyView(Context context){
super(context);
}
//当在XML中引⼊MyView时候调⽤
public MyView(Context context, AttributeSet attributeSet){
super(context, attributeSet);
}
//这个构造函数⼀般不会主动调⽤
public MyView(Context context, AttributeSet attributeSet,int defStyleAttr){
super(context, attributeSet, defStyleAttr);
}
@Override
protected void onDraw(Canvas canvas){
android11适配机型
initPaint();
canvas.drawCircle(100,100,50, paint);
paint.setColor(Color.BLUE);
canvas.drawLine(100f,200f,300f,300f,paint);
}
private void initPaint(){
paint.setAntiAlias(true);//(抗锯齿)
paint.setColor(Color.RED);//(画笔颜⾊)
paint.setAlpha(10);//设置画笔透明度,取值0~255  0为透明  255 不透明
paint.setStrokeWidth(10f);//画笔宽度
paint.setStyle(Paint.Style.STROKE);//画笔填充类型
}
在activity中的引⽤:
MyView myView=new MyView(this);
setContentView(myView);
在xml中的引⽤:
<st10.MyView
android:layout_width="match_parent"        android:layout_height="match_parent"> </st10.MyView> setContentView(R.layout.activity_main);

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。