使用View绘画简单的图形

看别人的博文,自己也最好有个笔记,以后可以解决很多事情,帮助自己,也方便大家。
1.自定义一个View

  1. package com.ekin.android.viewtest;  
  2. import android.content.Context;  
  3. import android.graphics.Canvas;  
  4. import android.graphics.Color;  
  5. import android.graphics.Paint;  
  6. import android.graphics.Rect;  
  7. import android.graphics.RectF;  
  8. import android.view.View;  
  9. public class MyView extends View {  
  10.     private Paint paint ;  
  11.     public MyView(Context context) {  
  12.         super(context);  
  13.         paint = new Paint();  
  14.         paint.setAntiAlias(true);//设置画笔无锯齿(如果不设置可以看到效果很差)  
  15.         this.setKeepScreenOn(true);  
  16.         paint.setColor(Color.RED);  
  17.     }  
  18.     @Override  
  19.     public void onDraw(Canvas canvas) {   
  20.         canvas.drawColor(Color.WHITE);//设置刷屏颜色  
  21.         Rect rect = new Rect(30,30,50,50); //这里最后两个参数不是宽高、而是矩形右下角的坐标  
  22.         canvas.drawRect(rect, paint);  
  23.         RectF rectF = new RectF(70f,30f,90f,90f);//RectF 只是矩形 float形式 只是跟Rect精确度不一样  
  24.         canvas.drawArc(rectF, 0360true, paint);  
  25.         canvas.drawCircle(1503020, paint);//这也是画圆 第三个参数为半径  
  26.         float[] points =new float[]{200f,10f,200f,40f,300f,30f,400f,70f};  
  27.         canvas.drawLines(points, paint);  
  28. //      canvas.drawLines(points, 1, 4, paint);//选取特定点数组中两点来画出一条直线  
  29.         canvas.drawText("Ekin View"23030, paint);  
  30.     }   

2.将自己的View显示在指定的Activity上面

  1. package com.ekin.android.viewtest;  
  2. import android.app.Activity;  
  3. import android.os.Bundle;  
  4. import android.view.Window;  
  5. import android.view.WindowManager;  
  6. public class MainActivity extends Activity {  
  7.     /** Called when the activity is first created. */  
  8.     @Override  
  9.     public void onCreate(Bundle savedInstanceState) {  
  10.         super.onCreate(savedInstanceState);  
  11. //隐去电池等图标和一切修饰部分(状态栏部分)
  12.         this.getWindow().setFlags(
  13. WindowManager.LayoutParams.FLAG_FULLSCREEN, 
  14. WindowManager.LayoutParams.FLAG_FULLSCREEN);  
  15.   this.requestWindowFeature(Window.FEATURE_NO_TITLE);  // 隐去标题栏(程序的名字)  
  16.         setContentView(new MyView(this));   
  17.     }  
  18. }  

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值