我有ListActivity
显示用户数据。用户第一次加载列表时,它是空的,因此我使用“空视图”功能,通过为视图提供ID android.R.id.empty
。此视图不仅仅是一个“无项目”消息:它是一种快速入门指南,向用户显示如何创建将显示在列表中的数据项。
因为快速入门指南是一个非常复杂的布局,有很多图片,所以我不希望加载它并将其保留在内存中的开销,在列表不为空的常见情况下。出于这个原因,我想把它“隐藏”在ViewStub
后面。
在加载活动时,列表是否会显示“空”视图,加载ViewStub
?在调用onCreate
之前,列表适配器在setContentView
中设置,因此它在列表显示之前。如果它会这样做,有没有办法避免它而不完全替换'空视图'功能?显然,可以在适当的时候自己更改可见性,但我这样做是为了减少活动中的代码量。
答案 0 :(得分:0)
Android编程总是很好,可以手动完成这些工作。如果列表实际上是一个空列表,您可以手动将ViewStub
变为变量并对其进行充气。这根本不是很难。只有在完全加载列表时才应查看适配器大小。如果适配器的大小为0,那么您可以获得ViewStub
并对其进行充气。