RecyclerViewには、VideoViewを持つViewHolderと、状態(選択されているかどうか)の「好き」のボタンがあります。アダプタをPresenterとMVPで接続する方法は?
My Presenterには、Model - VideoEntityの "Like"ステータスを更新するメソッドがあります。 コールバックでは、ViewフォームPresenterを更新する必要があるため、getView()。updateItem(VideoEntityエンティティ)を呼び出します。 その後、私はrecyclerViewエンティティの位置を見つけ、アイテムを無効にする必要があります。 だから私はそれを避けたいです。
古典的なアーキテクチャーでは、ViewHolderからいくつかのメソッドを呼び出し、そこでコールバックを取得し、変更されたデータを更新できます。
この疑似コードをMVPパターンに移行するにはどうすればよいですか?
@Override
public void onBindViewHolder(ContainerViewHolder holder, int position) {
...
rx.subscribe(result -> holder.update(result));
}
@Override
public void onViewRecycled(ContainerViewHolder holder) {
if (haveBackgroundRequests) { rx.unsubscribe(holder); }
}
待つことができない方https://github.com/remind101/android-arch-sample/tree/master/app/src/main/java/com/remind101/archexample –
リンクされたgithubプロファイルを使用して、ビジターデータのネットワーク要求をどこで行っていますか? – Rafa