2017-10-06 17 views
0

私はRecyclerViewとそれが表すデータのリストを持っています。私は、このアイテムIDに基づいてユニークなIDを含むServer/DBからデータを取得します.IdentはServer/DBにリクエストして、RecyclerViewに表示したいと思います。Recyclerviewの各アイテムを個別にリクエストする方法は?

私は別にリクエストしていますので、画面に表示されているものと同じ数のアイテムをリクエストしたいと思います。

私はすでに私は、サーバーから受信し、それらを表示しますが、すべての項目について、私はの字幕を表示するために、各項目についてonBindViewHolderで

の詳細のための追加要求を行うと、同じ画面上に表示するために必要な10の項目を定義した

各アイテムIは、追加の要求

viewModel.loadSubtitles(item.getId()) 
     .subscribeOn(Schedulers.io()) 
     .observeOn(AndroidSchedulers.mainThread()) 
     .subscribe({item-> 
      holder.binding.textView.setText(item.getSubTitle()); 
     } 
     }); 

作ってるんだ。しかし、私は毎回私は、各項目に対して一度だけしたいDB /サービス への要求を行い、それをスクロールしていた場合。

+0

明確にする必要はありません。 –

+0

リクエストと呼び出しごとにThreadPoolExecutorを使用すると、RecyclerViewAdapterのonBindViewが実行されます。[ThreadPoolExecutor](https://developer.android.com/reference/java/util/concurrent/ThreadPoolExecutor.html) –

+0

@Sanjay Majoka私は自分の質問を更新しました –

答えて

0

は右、その項目にonclickの?

私が本当なら、アイテム全体にIDを与え、onBindViewHolderのそのビューにonclickリスナーを設定します。他のアクティビティに詳細情報を表示して、インテントでアクティビティを変更し、キー値を入力してクリックされたアイテム情報を表示できるようにする必要があります。

+0

いいえ別のアクティビティやフラグメントに移動したくないので、各アイテムの同じ画面に表示する必要があります。私の問題はどのようにサーバーからロードし、アイテムを混在させることができず、適切なアイテムに情報を表示できませんでした –

関連する問題