Android中提供了相应的绘图API来绘制各种各样的图形,因此可以使用绘图API来实现自定义View,下面就实现绘图API来绘制一个自定义的Rotate矩形

效果图如下:
Android Notes 之 自定义View(2) 之 绘图API的使用_第1张图片

1.继承View
2.draw函数中画出矩形

/** * Created by tongs on 2016/4/12. * email:[email protected] */public class RotatingRect extends View {    private final int CALL_HANDLER = 1;    //画笔对象    private Paint paint;    //旋转的角度    private float degrees=0;    //利用Handler重新绘制视图    private Handler handler = new Handler(){        @Override        public void handleMessage(Message msg) {            //使View失效            invalidate();        }    };    public RotatingRect(Context context) {        super(context);        initPaint();    }    public RotatingRect(Context context, AttributeSet attrs) {        super(context, attrs);        initPaint();    }    public RotatingRect(Context context, AttributeSet attrs, int defStyleAttr) {        super(context, attrs, defStyleAttr);        initPaint();    }    private void initPaint() {        paint = new Paint();        paint.setColor(Color.RED);    }    @Override    public void draw(Canvas canvas) {        super.draw(canvas);        //画布备份,每次都要invalidate        canvas.save();        //画布移动到200,200        canvas.translate(200,200);        //画布旋转        canvas.rotate(degrees,50,50);        //画出矩形        canvas.drawRect(0,0,100,100,paint);        //每次重绘之后角度自增        degrees++;        //画布恢复,但会对translate,rotate等失效        canvas.restore();        //通知handler进行canvas的视图销毁        handler.sendEmptyMessageDelayed(CALL_HANDLER,100);    }}

更多相关文章

  1. Android UI系统控件进阶(四)—网格视图控件GridView
  2. Android View视图------Android如何创建一个view。
  3. Android 视图层级分析辅助工具详解
  4. Android开发笔记(一百二十二)循环器视图RecyclerView
  5. android仿微信朋友网、悬浮窗、时间轴、图表、刻度尺、RecyclerV

随机推荐

  1. android---图片切换
  2. Android(安卓)Activity Lifecycle Note
  3. Android的Handler机制详解2_native
  4. android 判断系统是否有Navigation Bar
  5. Android(安卓)获取包名,版本信息
  6. Grade 编译 Android(安卓)解决 Error:mor
  7. Android获取RecyclerView滑动距离
  8. Android通过http协议POST传输方式
  9. Android(安卓)获取屏幕尺寸与密度
  10. Android软键盘弹出,界面整体上移的问题