自定义View

自定义控件的有三种方法:自绘控件,组合控件,继承控件

使用方法:和普通控件一样使用

Android系统要自定义View,首先要了解view加载机制,主要有三个方法

1.onMeasure();//计算view自身的大小

2.onLayout();//仅在ViewGroup中,用来为子view指定位置

3.onDraq()://View绘制内容


(一)自绘控件

1.自绘控件的意思是,这个View上所展示的全部都是自己绘制出来的。

2.自绘控件的步骤

(1)绘制View:

        绘制View主要是onDraw()方法中完成。通过参数Canvas处理,相关的绘制一般有drawRect,drawLine.drawpath等

      Canvas绘制的常用方法

      drawColor() 填充颜色

     drawLine()  绘制线

     drawOval()绘制图

    drawPath绘制路径

     drawPicture() 绘制图片

     drawPoint() 绘制点

    drawRect()绘制矩形

   drawText()  绘制文本

  2.刷新View

   invalidate(int l,int t,int r,int b);刷新布局

  invalidate();整个view刷新

3.控制事件:

 onSaveInstanceState()处理屏幕切换的现场保存事件

onRestoreInstanceState();屏幕切换的现场还原事件

onKeyDown()处理按键事件

onMeasure()当控件的父元素正要放置该控件时调用


(二)组合控件

组合控件的意思就是,不需要自己去绘制视图上显示的内容,而只是用系统原生的控件就好了,但可以将几个系统原生的控件组合到一起,这样创建出的控件就被称为组合控件。

2、例如:标题栏就是个很常见的组合控件,很多界面的头部都会放置一个标题栏,标题栏上会有个返回按钮和标题,点击按钮后就可以返回到上一个界面。那么下面我们就来尝试去实现这样一个标题栏控件。


(三)、继承控件:
1、概念:
              继承控件的意思就是,我们并不需要自己重头去实现一个控件,只需要去继承一个现有的控件,然后在这个控件上增加一些新的功能,就可以形成一个自定义的控件了。
        这种自定义控件的特点就是不仅能够按照我们的需求加入相应的功能,还可以保留原生控件的所有功能,比如 Android PowerImageView实现,可以播放动画的强大ImageView 就是一个典型的继承控件。

2、例如: 对ListView进行扩展,  加入在ListView上滑动就可以显示出一个删除按钮,点击按钮就会删除相应数据的功能。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值