自定义控件
视频学习概要,逐渐补充。
自定义控件的一些概念
- 什么是自定义控件
1 | 在Android系统中,用系统的自带控件重新组合或者自定义类继承View或者自定义类继承ViewGroup,实现特定的UI效果。 |
为什么要学习自定义控件
- 系统的某一个控件,在不同的设备效果不一样,要统一风格
- 整个软件在不同设备风格统一
- 系统自带的控件,功能有限,增加功能;或者功能太多了,减掉功能
- 自定义控件原则,如果系统可以满足,就不用,虽然可以写出很好的效果,但是会有对应的工作量和bug
自定义控件的重要性
- 面试问题 1. View和ViewGroup的区别 2. Android中事件的传递 3. View的原理
- 工作中的需求
常用控件的回顾
eg: TextView ProgressBar
用系统控件重新绘制
优酷菜单
- 分析实现原理
- 通过布局实现效果
- 代码处理逻辑
- 动画原理
- 优酷菜单做实验扩展
- 扩展知识-动画的分类
- 属性动画结解决bug
广告条效果
- ViewPager的使用
- 广告条的基本功能
- 根据页面改变设置文本
- 添加指示点
- 支持左右无限滑动
- 当手滑动或者按下的时间停止滑动
- 添加点击事件
- ViewPager扩展
- 改进成引导页面
下拉框
- PopupWindow使用案例
- 创建步骤
- 代码中直接创建listview
- 适配
自定义类继承View
自定义开关
- 自定义一个类继承View
- View绘制原理(重要)
- 开关的点击事件
- 开关的滑动事件
- 解决事件冲突
自定义属性
- 自定义属性步骤
- 常用属性(format 常用类型 reference 引用 color 颜色 boolean 布尔值 dimension 尺寸值 integer 整型值 string 字符串 enum 枚举)
- 布局文件解析和类的属性的关系
水波纹
- 创建一个类
- 画一个圆环
- 播放动画,慢慢的变大
- 点击的时候就开始画圆
- 读另外工程的代码
联系人快速索引
自定义类继承ViewGroup
- 仿viewpager功能
- 侧滑删除菜单
总结
- 学习过程:尚硅谷Android视频教程《自定义控件》 杨光福IT讲师
- 跟着视频学习,为自己积累经验。
- 这个篇章需要一定的时间进行研究。
- 项目在:maoai-xianyu’Github 中总结。