简介:
走往android的进阶之路,避不开自定义View的学习和绘制。这里以绘制一个可用的图片相框为例。开始系统的学习View的绘制。
麻雀虽小却五脏俱全,不仅要求对绘制居中的处理,还有文字、图片得宽高的处理。涉及知识内容可以说非常实用。
图片介绍框需求:
- 边框默认红色,宽度为20
- 图片可铺满,可居中
- 图片下面是文字介绍。要求居中,长度过长时自定省略部分内容
效果图:
效果图设计图:
设计图心得与总结:
- 在编码前首先规划好几个大的模块,对宽高进行初步测量。会节省大量的时间。在编码过程中突然增加模块,会使得宽高的计算变得混乱。
- 本案例中运用了两个Rect。分别为文字内容和图片服务。开始不知道,只用了一个,导致坐标混乱。
- 图片绘制,确定左上坐标和右下坐标。文字绘制只需要一个坐标,android会从这个坐标开始往右上方开始写字。
- 绘制时需要考虑的一些因素:
- 文字的长度过长,需要进行裁剪。
- 做居中操作时,需要操作原图片宽高,如果原图片过大,需要单独处理。
- 因为边框的存在, 在测量宽高时需要处理边框的宽度。
参考文章:
https://blog.csdn.net/lmj623565791/article/details/24300125
附件:
MyImageView下载地址
若附件无法下载,请复制链接地址,在浏览器重新执行即可!!
网友评论