1.为什么要自定义控件:
1)实现特定的显示风格,原生控件无法支持的。
2)处理特定的用户交互。控件除了显示效果,还有个很重要的方面是与用户的交互,对用户的操作,实现特定的处理和反馈。
3)优化布局,将多个控件组合实现一个嵌套的完整布局
4)将可能会复用的控件进行分封装,例如顶部和底部的tab.
2.自定义控件的步骤:
1)自定义属性的声明和获取
2)测量 onMeasure
3)布局onLayout(ViewGroup)
3)绘制onDraw
4)onTouchEvent
5)onInterceptTouchEvent(ViewGroup)
1)实现特定的显示风格,原生控件无法支持的。
2)处理特定的用户交互。控件除了显示效果,还有个很重要的方面是与用户的交互,对用户的操作,实现特定的处理和反馈。
3)优化布局,将多个控件组合实现一个嵌套的完整布局
4)将可能会复用的控件进行分封装,例如顶部和底部的tab.
2.自定义控件的步骤:
1)自定义属性的声明和获取
2)测量 onMeasure
3)布局onLayout(ViewGroup)
3)绘制onDraw
4)onTouchEvent
5)onInterceptTouchEvent(ViewGroup)