自定义textview 实现按下时文本和图片放大1.2倍 onDraw方法中使用到的一些画笔draw形状的总结
https://www.jb51.net/article/121876.htm
https://www.cnblogs.com/yishujun/p/5556145.html
onDraw方法中用到的画笔draw的形状等等:https://www.cnblogs.com/hwgt/p/5416866.html
TextView:
它继承了TextView,实现了按下、及获取到焦点时背景和文字放大1.2倍。
- 先在values目录下创建自定义属性的XML,如attrs.xml等等,在其中写自定义的属性。
2. 在layout布局文件中使用自定义属性
首先必须在布局文件文件头部添加蓝色部分的声明(styles是自定义属性集所在的XML的名字)
接着,在布局文件中使用自定义属性
3 .在构造方法中解析获取XML中自定义属性的值:正常字号tvTextSize和放
后的字号tVZoomTextSize。
解析得到的自定义属性值后,重写下面按下,焦点获取的方法,并在当中设置字号大小
按下状态:
setPressed函数在控件被用户按下时会自动触发,不需要在代码中调用
获取到焦点状态:(专门给光标模式设计的)
之所以用isFocused函数是因为能监听到焦点变化,而且是控件会根据光标焦点变化自己调用该函数;而setFocusable只是设置能不能获得焦点,不能判定是否获得了焦点,用起来相对麻烦。
自定义view中重写的函数的使用:
函数isFocused和setPressed都会自动调用。即初始化自定义控件即可