最近在做开发的时候,遇到了这样的一个需求:有一个聊天的模板列表,要求使用弹框的样式展示,尽可能的做到高度自适应。于是我就开始了各种探索:
探索1>动态的的设置弹框的高度,发现无法准确的计算高度,不美观;
探索2>将列表设置成固定高度,发现如果数目少的话就留有空白,不美观;
探索3>动态的设置列表的高度,这个办法还是可以的,使用recycleView做列表,发现高度很难控制,最终放弃了。
探索4>动态的设置列表的高度,只是使用listView实现,最终发现是符合需求的。
好了,闲话不说了,该是上硬菜的时候了。
public class FixItemListView extends ListView {
private int mMaxItemCount;
public FixItemListView(Context context) {
super(context);
}
public FixItemListView(Context context, AttributeSet attrs) {
super(context, attrs);
}
public FixItemListView(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
}
@Over