1

我将启动一个应用程序,其中我的活动页面将包含“n”个分组视图。分组视图的意思是“视图的集合(即一组可以有TextView+Button+ImageView)”。所以页面将有“n”个这样的分组视图。

我需要一些建议,比如实现这一点的最佳实践是什么。我可以想到以下的:

1) 是否应该使用 ScrollView (然后我必须在运行时创建组并将一个组放在另一个组下)?

2)或者使用 ListView (那么我怎样才能适应每行的高度,因为分组视图的高度可能彼此不同?)

或者我有什么其他的方法可以一起去吗?

欣赏建议和任何示例(如果有)。提前谢谢。

4

3 回答 3

1

两种选择都可以,这实际上取决于您的用例。

  • 在 ScrollView 内放置一个垂直 LinearLayout,并将您的分组视图添加到 LinearLayout。如果您的此类视图数量相对较少(不一定是固定数量,但足够小以至于您不必滚动许多“页面”即可全部查看),我建议您这样做。确保 ScrollView 有android:layout_height="match_parent"并且 LinearLayout 有android:layout_height="wrap_content".
  • 如果分组视图的数量不小,您可以使用 ListView 并为其制作一个 Adapter。这使您可以在项目滚出屏幕时利用 ListView 的自动视图回收。

对于任何一种情况,只为分组视图创建一个 XML 文件。在代码中,您将获得一个 LayoutInflater 对象(通常通过调用Activity.getLayoutInflater())并调用inflate(R.layout.your_grouped_views, null). 如果使用 LinearLayout,您可以使用其中一种LinearLayout.addView(..)方法将其添加到代码中;如果使用 ListView,您的适配器将从getView(...).

于 2013-08-10T04:21:36.537 回答
1
  1. 创建一个包含组视图常量元素的 xml 布局。

  2. 在您contentView的应用程序的主 xml 布局中,放置一个ScrollView和一个LinearLayout

  3. 然后在程序inflate中,您可以根据需要查看尽可能多的组视图。

于 2013-08-10T05:12:35.470 回答
-1

对于你的回答,我想给你这个网站的参考,在这个网站上你可以学习在 android 中创建动态视图...

于 2013-08-10T04:51:43.370 回答