作者TPNEW ()
看板AndroidDev
标题[问题] GridView 高度设定问题
时间Sat Nov 22 22:06:53 2014
目前想要用GridView做个类似日历的UI
但是每格内容不一致 造成大小不一样 结果GridView的背景就跑出来了
http://i.imgur.com/nVtfTPs.png
格子内的Layout配置是一个RelativeLayout包两个TextView
我在Adapter的里面有计算最高的高度 并把每格的高度设定到最高
public View getView(int position, View convertView, ViewGroup parent) {
....
....
// holder.background 是格子内的RelativLayout
if(holder.background.getMeasuredHeight() > MaxHeight)
MaxHeight = holder.background.getMeasuredHeight();
holder.background.setMinimumHeight(MaxHeight);
....
....
}
但是这样只有後面会被设定到最高高度
要把GridView往下卷 再往回卷 剩下的RelativLayout的高度才会被设定
http://i.imgur.com/DdIO2wB.png
想说call notifyDataSetChanged() 让他在抓到最高高度的状况下重刷一遍getView
但是没有效果 (对GridView没有用?)
还有另一个疑惑的问题
我现在最理想的状况就是GridView格子都一样大
然後GridView是完整的宽高 (就是不用卷动就可以全部显示)
然後我发现在第二张图的状况下 点开上面的Spinner 然後选取任一Item
结果GridView就会自动伸展到完整的宽高 (UI被Update了?)
就像这样
http://i.imgur.com/EATdKF3.png
选取完Spinner之後到底背後做了甚麽?
注: spinner我都还没设任何Listner上去
问题一:如何将GridView同一行(或全部)的高度都一致?
问题二:如何让GridView显示完整的宽高?
问题三:为什麽选取完spinner以後会发生上面那种现象?
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 111.255.188.226
※ 文章网址: http://webptt.com/cn.aspx?n=bbs/AndroidDev/M.1416665215.A.B1F.html
1F:→ ssccg: 1 2 直接设固定高度不要用wrap_content? 11/22 23:06