2

假设我有一个ViewGroup可以包含几个可选子视图的 a ,比如 a VideoView、 anImageView和一些可选按钮。

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

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

4

2 回答 2

2

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

于 2012-10-04T18:22:26.360 回答
1

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

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

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

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

于 2012-10-04T18:33:53.953 回答