第一种基本用于头像,头像压了一半在图片上,至于圆形头像怎么做这里暂且不表,源码一大堆。开始做这个时以前没遇到过,遇到这种都是退而求其次,直接放在图片下面,但是在工作中不能随便,必须完成这样的需求。在把各种常用布局试了个遍后还是无法实现这种效果。接下来就说说我最后实现的方法,可能不是主流做法。首先用一个相对布局包裹住头像和图片。假设图片高200dp,头像高40dp,我们就将该相对布局的高设置为图片的高加上头像的高的一半,头像居于布局最下,就实现了这种效果。
第二种也常用于第三方登录,最开始时我是用权重分配,但发现给定的图片如上图一样,原始就这么小的话使用权重将拉长图片的宽度,使得图片变形,我解决的办法是将其分别嵌套在一个布局中,使用什么布局随意,我使用的是线性布局,最外层再嵌套一个线性布局,里面就是三个控件各自所在的线性布局,三个线性布局使用权重分配宽度,三个线性布局里设置gravity属性,将子控件居中,就解决了这个布局。但是多嵌套了一层布局,势必会影响到性能,可我目前只能想到解决这种小图片均匀分配位置的方式。如果各位有其他方式,还望提点一二。