我正在尝试使用Room Persistance Library和Paging Library设置所有列表,但在实施PagedListAdapter
时我遇到了一些问题。
问题1
我不想在if
中写下任何when
,onBindViewHolder
...条件,因此滚动完全不流畅。我有一个带有属性的模型。例如,我想根据模型的view
来设置布局内TextView
的可见性(例如Boolean
),但我不想'我想用if。实现这一目标的正确方法是什么?
我应该在模型中创建Int
或View.VISIBLE
的{{1}}属性吗?但是,模型可能会因许多属性而变得非常复杂,并且所有属性都位于View.GONE
数据库的所有模型对象上。
我应该创建另一个只具有适配器UI所需属性的模型吗?但是每次修改真实模型时,我还必须修改适配器模型才能看到UI上的更改。而且我认为这根本不好。
您是否知道Room
中是否存在我可以异步的地方?
问题2
我需要使用PagedListAdapter
之类的函数,这需要getString(R.string.resource)
。我还需要使用context
将图片加载到Glide
,但需要ImageView
或Activity context
。我试图用匕首注射它,但这是不可能的。通过构造函数传递上下文是安全的吗?或者最好的方法是什么?
(我想在实施Fragment context
)
答案 0 :(得分:0)
Paging library
将更改我的DataSource。 Example app。 Context
实例中的View
实例和方法View.getContext()
。