Android - 手动将 View 膨胀到线性布局上

标签 android android-layout android-view

我有一个由许多嵌套布局组成的布局,如下所示。但是对于其中一个 LinearLayout(在我的例子中是 contentPanel),我需要将大约 10 个不同布局的 View (比如列表项)膨胀到这个 contentPanel 上。我该怎么做?

我的布局结构:

<ScrollView>
  <LinearLayout>
  <RelativeLayout>
  <LinearLayout> ///contentPanel
  <LinearLayout>
<ScrollView>

最佳答案

您当然可以像评论中建议的那样使用 View stub ,因为它们是相当便宜的 View 元素。

但是,如果不同布局的这 10 个 View 本身就非常昂贵,您可能仍然会发现自己并不是最有效的方法。

我猜您正在考虑手动扩充,因为您真的想要这 10 个元素的 ListView 的好处 - 所有这些好东西,例如 View 回收,以及使用有效模式的机会,例如 ViewHolder但是您不想在 ScrollView 中使用 ListView 是正确的,因为那是 bad idea

好吧,您可能仍然可以使用 ListView 。不要使用外部 ScrollView 。将布局分成两组 - contentPanel 下方和上方的组。为 10 个不同的 View 创建一个 ListView ,然后将两个组添加到该 ListView 中作为 headerView和一个 footerView

也许这会有所帮助。

关于Android - 手动将 View 膨胀到线性布局上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16057285/

相关文章:

android - 更改屏幕亮度 系统设置 Android

android - 在 onBackPressed 中更改动态创建的布局的可见性

Android:如何强制Explore-By-Touch/Talkback在Accessibility Focus中重复当前View的Content Description?

android - 膨胀类 android.support.v4.widget.drawerlayout 时出错

android - SDK 管理器不显示示例包选项

Android:当按钮打开时如何将按钮对齐到键盘的底部和上方?

java - Material 范围栏 : setOnRangeBarChangeListener method

android - 在 Activity 生命周期中什么时候开始动画?

android - 是否可以将谷歌地图旋转到特定方位?

android - 使用服务和 BroadcastReceiver 停止观看应用程序