我应该隐藏可选视图还是在运行时添加它们?

时间:2012-10-04 17:52:10

标签: android android-layout android-fragments android-view

假设我有ViewGroup可以包含多个可选的子视图,例如VideoViewImageView和几个可选按钮。

如果我在布局文件中包含所有可能的子视图但是将所有子视图设置为默认情况下的可见性,但是在运行时根据需要更改可见性,是否会浪费大量资源?

根据需要在运行时添加视图会更好吗?还有另一种方法会更明智吗?片段

2 个答案:

答案 0 :(得分:2)

我更喜欢创建它们并隐藏它们。我注意到我看过的大多数内置Android布局都是这样做的。就个人而言,我认为它减少了NullPointerExceptions以及避免它们所需的检查。

答案 1 :(得分:1)

通过不在布局文件中创建少量视图而节省的资源通常不会对应用程序的运行时资源消耗产生很大影响,除非它们包含大量图像或其他非常繁重的资源。

另一方面,在布局文件中包含这些视图(并隐藏它们)

  • 使它们比在Java代码中创建它们更具可读性
  • 导致他们被Android Lint检查。

这就是为什么我总是建议将它们放在布局中。