zoukankan      html  css  js  c++  java
  • Android使用继承View类来绘图

    添加新类MyView继承View

    在MyView中实例化Paint

    复制代码
     1 package com.hu.viewdemo;
     2 
     3 import android.content.Context;
     4 import android.graphics.Canvas;
     5 import android.graphics.Color;
     6 import android.graphics.Paint;
     7 import android.graphics.Paint.Style;
     8 import android.graphics.Path;
     9 import android.view.View;
    10 
    11 public class MyView extends View{
    12 
    13     private Paint paint;//画笔
    14     
    15     public MyView(Context context) {
    16         super(context);
    17         // TODO Auto-generated constructor stub
    18         paint = new Paint();
    19         paint.setColor(Color.RED);//设置画笔颜色
    20         paint.setAntiAlias(true);//设置抗锯齿
    21         paint.setStyle(Style.STROKE);//设置为空心
    22         paint.setStrokeWidth(1);//设置空心边距为1
    23         paint.setTextSize(40);//设置字符串高
    24     }
    25 
    26     @Override
    27     protected void onDraw(Canvas canvas) {
    28         // TODO Auto-generated method stub
    29         super.onDraw(canvas);
    30         canvas.drawCircle(100, 100, 20, paint);//画个圆
    31         canvas.drawText("这是字符串", 0, 40, paint);//写字,指定左下角位置
    32         canvas.drawRect(100, 200, 200, 300, paint);//画矩形
    33         Path path=new Path();//创建路径
    34         path.moveTo(300, 200);
    35         path.lineTo(300, 300);
    36         path.lineTo(200, 400);//指定路径
    37         canvas.drawPath(path, paint);//沿路径绘图
    38     }
    39 
    40 }
    复制代码

    然后在activity类中将MyView的实例设为ContentView

    复制代码
     1 package com.hu.viewdemo;
     2 
     3 import android.app.Activity;
     4 import android.os.Bundle;
     5 
     6 public class ViewDemoActivity extends Activity {
     7     /** Called when the activity is first created. */
     8     @Override
     9     public void onCreate(Bundle savedInstanceState) {
    10         super.onCreate(savedInstanceState);
    11         MyView mv=new MyView(this);
    12         setContentView(mv);
    13     }
    14 }
    复制代码

  • 相关阅读:
    【转】前端开发工程师如何在2013年里提升自己
    【转】再谈PHP、Python与Ruby
    【转】从知乎上看到“全栈开发者”讨论之后的自黑
    C#精髓 第四讲 GridView 72般绝技
    web网站第一次加载慢的解决方法
    SQL SERVER 提供了一些时间函数:
    Eval() 中数据格式化或格式化数据
    SQL SERVER 取本月上月日期
    LINQ to SQL连接数据库及语句
    权限管理
  • 原文地址:https://www.cnblogs.com/leischen/p/3000545.html
Copyright © 2011-2022 走看看