我只是想知道,如果我有一个普通的列表视图并且我在其行中添加了一些组件,比如说,另一个列表,并将其可见性设置为已消失,然后再填充内部列表并使其可见,它是否会显示根据需要增长父行?
答案 0 :(得分:0)
是的,它会增长Cell,Cell Layout本身通常是wrap_content所以它会增长。他们是Googles Android Team专门针对该主题的几个DevBytes。
查看此剧集:
答案 1 :(得分:0)
对于标题的字面含义:
是的,理论上的最大值是INT_MAX,因为它在ViewGroup.LayoutParams
中定义另外需要提及的是,由于先前平台上View.MeasureSpec中的错误,最大有效值可能会更小。
对于预期的问题:
是的,它将重新布局UI,因为当这些事情发生变化时,将重新测量布局层次结构,通过调用View.requestLayout()然后调用View.onMeasure(),这通常会在子类中被覆盖图。
因此,如果将布局参数设置为wrap_content
,则应自动增大或缩小。
米歇尔提到的DevBytes也值得关注。
另外要提到的是,通常你不应该嵌套ListView
,因为实现使得这不可能(参见ListView.onMeasure()),因为这不是ListView
的意图,其中包含视图回收功能。 (但是很久以前我用肮脏的黑客来解决这个限制:P)
对于优雅的方法,您可能希望使用LinearLayout
,或者您可以查看LinearListView