gpt4 book ai didi

java - "adapter"放在 MVP(被动 View )中的什么位置?

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:37:03 27 4
gpt4 key购买 nike

我一直在用我认为的 Passive MVP 实现我的 android 应用。

例如,在我的 View 类中,我有一个 ListView。

查看

ListView userListView;

当一个项目被点击时,我简单地调用了演示者的一个方法

userListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {

@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
mPresenter.onUserSelected(position);

}

});

我感到困惑的部分是 ListView 需要一个适配器。

主持人

所以目前在我的演示者中我有这个:

private ArrayList<User> mUserList = new ArrayList<User>();

...

adapter = new UserListAdapter(getContext(), mUserList);
mView.setUserListAdapter(adapter);

当我想改变某些东西时,我会这样做:

mUserList.add(user);
adapter.notifyDataSetChanged();

这是适配器的正确位置吗?我问的原因是因为我最近想用 swing 做一些工作,并且出现了类似的问题,JLists 需要一个看起来非常相似的 ListModel。那么对于 swing,ListModel 应该放在哪里?

最佳答案

我相信您已将您的适配器正确归类为 Presenter。

Presenter 是适配器。

适配器充当 View (ListView) 和模型(您的用户列表)之间的中间人,并通过适配器的 getView 方法提供列表中每个项目的 View 表示。

关于java - "adapter"放在 MVP(被动 View )中的什么位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26744228/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com