【发布时间】:2009-11-02 13:20:10
【问题描述】:
我有一个相当复杂的 ListView,具有可变的列表项高度。在某些情况下,我需要在列表项中显示一个额外的视图,默认情况下它是隐藏的(View.GONE)。通过启用它 (View.VISIBLE),列表项的高度会增加(或者至少应该如此)。
问题:
即使我将项目的根布局声明为wrap_content,并将项目中的每个组件声明为fill_parent,我隐藏/显示的应该更改项目高度的视图在底部而不是其父级(项目布局)高度增长以完全显示它。
是否有任何我可能遗漏的与 ListView 和项目布局和项目高度相关的问题?
更多观察:
出于测试目的,我现在将列表项布局缩减为仅包含根 LinearLayout 和 ImageView。当我将 LinearLayout 高度设置为例如200dip 和 ImageView 到 fill_parent,我预计 ImageView 会增长,直到达到其父级设置的 200dip 限制。
但是,图像只会与其位图资源一样高(就像我将其设置为 wrap_content)并且整个列表项将具有相同的高度(即就像我将其设置为wrap_content)。
但是,如果我将图像高度设置为例如200dip,那么列表项的高度会增加,项的布局也会增加。
换句话说,列表项布局的layout_height 被完全忽略,ImageView 上除硬编码像素值之外的任何高度值也是如此。
【问题讨论】:
-
嗨.. Matthias 请给我一个工作示例。我也面临同样的问题,但不清楚你是如何解决的。问题。