在某些情况下,最好使用 aViewGroup
创建列表,充当类似于 aListView
或的东西RecyclerView
。
例如,我有一种情况,我需要在ViewGroup
作为根布局的子项的 a 中显示项目列表。根布局是可滚动的(例如 aScrollView
或NestedScrollView
),因此使用另一个滚动View
来显示列表项是不合适的。
这方面的一个示例可能是在 a 中显示列表项CardView
(当然,在这种情况下,您不会想要太多的列表项,因为卡片并不适用于此)。在卡片中使用滚动布局显然是不正确的,尤其是当卡片是滚动根布局的一部分时。
另一个例子是创建一个 Navigation Drawer(当然在 Google I/O 2015 之后,有Design Support Library,所以使用 aNavigationView
会简单得多)。但是在设计支持库之前,您必须填充一个ViewGroup
(可能是LinearLayout
在导航抽屉中显示的项目,因为抽屉的根布局必须是可滚动的。有关此场景的更多信息,我问了一个类似的问题。
问题的关键在于,没有简单的方法可以将 aViewGroup
用作列表布局,因此我们中的许多人倾向于使用复杂的解决方案来禁用 aListView
或的滚动RecyclerView
。是的,ListView
可以禁用滚动,但通常仍会出现 Lint 警告。因此,使用列表也可以被认为是在 scroll sViewGroup
上禁用滚动的替代解决方案View
。
那么有没有一种简单的方法可以将ViewGroup
s 用作列表?