自定义View学习之路(四)————图片介绍框

简介:

  走往android的进阶之路,避不开自定义View的学习和绘制。这里以绘制一个可用的图片相框为例。开始系统的学习View的绘制。
  麻雀虽小却五脏俱全,不仅要求对绘制居中的处理,还有文字、图片得宽高的处理。涉及知识内容可以说非常实用。
图片介绍框需求:

  • 边框默认红色,宽度为20
  • 图片可铺满,可居中
  • 图片下面是文字介绍。要求居中,长度过长时自定省略部分内容

效果图:

《自定义View学习之路(四)————图片介绍框》 效果图

设计图:

《自定义View学习之路(四)————图片介绍框》 设计图

心得与总结:

  • 在编码前首先规划好几个大的模块,对宽高进行初步测量。会节省大量的时间。在编码过程中突然增加模块,会使得宽高的计算变得混乱。
  • 本案例中运用了两个Rect。分别为文字内容和图片服务。开始不知道,只用了一个,导致坐标混乱。
  • 图片绘制,确定左上坐标和右下坐标。文字绘制只需要一个坐标,android会从这个坐标开始往右上方开始写字。
  • 绘制时需要考虑的一些因素:
    1. 文字的长度过长,需要进行裁剪。
    2. 做居中操作时,需要操作原图片宽高,如果原图片过大,需要单独处理。
    3. 因为边框的存在, 在测量宽高时需要处理边框的宽度。

参考文章:

https://blog.csdn.net/lmj623565791/article/details/24300125

源码:

MyImageView源码

    原文作者:饮水思源为名
    原文地址: https://www.jianshu.com/p/d15d317d815d
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞