11

foo.setVisibility(View.GONE)如果 foo 是一个视图,和有什么区别fooParent.removeView(foo)?我对两个语句之前和之后视图的内存消耗特别感兴趣。

可见性设置为 GONE 的视图是否会消耗内存?

4

2 回答 2

9

如果您需要删除它们然后再次显示它们,最好将可见性设置为消失,然后再次更改回可见。

另一方面,如果您不需要它们再次可见,只需将它们删除即可。

于 2012-10-01T12:13:23.990 回答
0

假设

如果您需要在选择特定航班后删除所有可用的飞行选项。然后使用 fooParent.removeView(foo)。

或者,

如果您需要选择特定航班,所有飞行选项都会消失,取消选择飞行选项会再次显示所有可用选项,然后使用 foo.setVisibility(View.GONE) 和 foo.setVisibility(View.VISIBLE)

setVisibility(View.VISIBLE) = setVisibility(0)
setVisibility(View.GONE) = setVisibility(8)
setVisibility(View.INVISIBLE ) = setVisibility(4)
于 2012-10-01T12:25:40.780 回答