RecyclerView 何时使用 ItemDecoration 与 onBindViewHolder

RecyclerView when to use ItemDecoration vs onBindViewHolder

我正在我的应用程序中创建一个显示多个用户之间对话的消息传递功能。对于用户拥有的消息,我希望将头像图片右对齐,对于其他消息,我希望头像左对齐。

为了实现这一点,我在 framelayout 和 onBindViewholder 方法中设置了我的视图,我以编程方式设置了我的视图的重力和其他布局参数更改。 我想知道在这种情况下 ItemDecorations 的正确用法。将此布局代码放在我的 ItemDecorator 的 getItemOffsets() 方法中会更好吗? onBindViewHolder 是否应该只负责将我的数据与我的 xml 视图绑定?

我认为如果在 onBindViewHolder method, because these elements are part of the view. And ItemDecoration 中设置重力等会更好,通常用于在视图外或视图上方绘制某些内容 - 分隔符、边距、边框等

此外,您可以创建 2 种具有不同布局的视图持有者 - 一种用于对话的每一方(接收消息与发送消息)并且不必每次都设置引力。