-1

我正在创建动态视图并将其添加到循环中的父布局中。因此,当数据更大时,它会在设置视图时挂起android系统。

如何阻止这种情况?或者任何更好的方法来填充不会挂断设备的大型动态数据。

基本操作 :

  1. 我得到一个包含一些格式信息的数据列表

  2. 运行一个循环并根据不同类型的数据(文本、图像、链接等)的 switch case 动态创建视图,并将该视图添加到父布局中。

4

1 回答 1

0

请不要习惯在不使用 RecyclerView 的情况下手动将大量 UI 元素动态添加到屏幕上。有两种方法可以使用 RecyclerView 将数据传播到屏幕。

  1. 为每种数据类型创建带有标题的 UI 组件,如class CurrentItem(itemView: View) : RecyclerView.ViewHolder(itemView), DataTypeItem. DataTypeItem是每种数据类型的接口。RecyclerView比在适配器中创建和要RecyclerView.Adapter<DataTypeItem>。现在您的适配器能够使用 interface 显示您的所有数据类型DataTypeItem。在适配器覆盖方法onBindViewHolder(holder: DataTypeItem, position: Int)和重新键入持有人到CurrentItem. 最后将传入的数据传播到 UI 组件。
  2. 仅在没有 UI 组件的情况下为您的数据创建布局。是一个很好的例子,如何做到这一点。
于 2019-09-17T13:41:46.220 回答