码迷,mamicode.com
首页 > 其他好文 > 详细

自定义View组件

时间:2015-09-21 23:58:02      阅读:505      评论:0      收藏:0      [点我收藏+]

标签:

  

  自定义组件是通过继承View类,重写View类的方法而得,得到个性化的颜色、呈现、行为的组件。


 

一个圆:

public class SelfView extends View {
    float currentX=40;
    float currentY=50;
  //坐标,为float类型。 Paint paint
=new Paint();
  //画笔,
public SelfView(Context context) { super(context); } public SelfView(Context context,AttributeSet set){ super(context,set); }
  //以上是SelfView类的两个构造函数
  //重写了View类的onDraw()方法,其参数是Canvas类型的 @Override
public void onDraw(Canvas canvas){ super.onDraw(canvas);
  //指定画笔颜色 paint.setColor(Color.BLUE);
  //绘画图形 canvas.drawCircle(currentX,currentY,
25,paint); }
   @Override
public boolean onTouchEvent(MotionEvent motionEvent){
  //获取触摸下的新坐标位置 currentX
=motionEvent.getX(); currentY=motionEvent.getY();
  //通知当前组件重绘自己,为什么不能通过this.onDraw(),或onDraw()呢? invalidate();
return true; } }

像添加系统组件那样添加自定义的SelfView组件:

SelfView selfView=new SelfView(this);
        root.addView(selfView);

也可以在XML中:

<com.×××.×××.×××.SelfView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" />

 


 

自定义View组件

标签:

原文地址:http://www.cnblogs.com/zhangyanxiang/p/4827674.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!