Android View 管理

标签 android xml layout view

我目前正在编写一个 Android 应用程序,我希望它能够编写/设计得很好。

现在,我在我经常使用的相对布局中拥有一组多个 View (2 个 ImageView 、3 个 TextView )。有没有办法创建一个自定义 View 来重新组合它们?

我拍摄了此屏幕截图来解释我现在所做的事情:

enter image description here

如您所见,现在我刚刚复制/粘贴了包含我所有 View 的框架布局...这是正确的方法还是有更干净的解决方案?

谢谢大家

最佳答案

没有更好的方法是将您放入布局中的所有内容放入对象的 ArrayList 中。 然后创建一个 ArrayAdapter 以按照您想要的方式从此对象填充 ListView

此技术的优点是您可以获得 View 回收机制,该机制将回收 ListView 内的 View ,以减少内存消耗。

简而言之您必须:

1. 创建一个代表单行数据的对象。

2. 创建这些对象的 ArrayList

3. 创建包含 ListView 的布局或使用代码将 ListView 添加到主布局。

4.创建单行布局(您已经拥有它)。

5. 创建一个 ViewHolder,它将从 Views 的角度表示数据行的视觉效果。

6. 创建一个自定义 ArrayAdapter,它将根据您的需要填充行。

7.最后在onCreate中将此ArrayAdapter分配给您的ListView

您可以通过阅读我写的这篇博文来了解如何实现这一点:

Create a Custom ArrayAdapter

关于Android View 管理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15930297/

相关文章:

java - Android-JSP org.json.JSONException : Value <! java.lang.String 类型的 DOCTYPE 无法转换为 JSONObject

android - 无法在线性布局中的第一个图像下方设置另一个图像

javascript - 在 Node js 中迭代 Xml Node

java - 如何使用 XPath 提取 XML 表数据

html - 在文本末尾放置绝对框(根据文本长度灵活调整)

android - ScrollView 内的 ImageView 不会调整大小以填满屏幕(保持纵横比)

android - 编译play-services-gcm :8. 4.0 时出现版本冲突错误

java - 如何将底部导航与抽屉导航一起使用

html - 在不是全宽的可变大小容器内居中?

android搜索栏定制,