【问题标题】:MVP Nested RecyclerViews - Where to manage view changesMVP Nested RecyclerViews - 在哪里管理视图更改
【发布时间】:2021-01-02 15:02:22
【问题描述】:

我有一个带有两个嵌套回收器视图的 MVP 应用程序。视图持有者现在负责处理视图更改,例如可见性更改。但是我的视图持有者中也混合了逻辑和数据,我该如何订购?

我开始为每个产品写一份包含 Views 和 Actions 的合同。每个RecyclerView都应该有自己的View Interface和Presenter?鉴于 ViewHolder 可以控制itemView,它应该扩展一个视图接口吗?

【问题讨论】:

    标签: android design-patterns android-recyclerview view mvp


    【解决方案1】:

    您可以重用已有的 Presenter,用您需要的方法扩展当前的 View 契约。更喜欢较小的接口,在你的情况下,你的适配器 ViewHolders 的不同视图接口和你的 Fragment/Activity 的不同接口。

    您可以在演示者中指定特殊功能,将被动视图绑定到适配器中,例如:

    presenter.bindProductViewHolder(viewHolder, position....)

    viewHolder 实现了上面建议的较小接口。

    【讨论】:

    • 所以你会建议 ViewHolder 保留我当前 Presenter 的引用?
    • @AgustinMagne 否。适配器应该持有对演示者的引用。
    猜你喜欢
    • 1970-01-01
    • 2018-08-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多