私は主な断片を持っていますが、主な断片の中にはViewPager
があります。このビューページャは、各ページャ内部リサイクラーViewadapterのリサイクラー見ると実装があり、2つの断片をロード:ViewPagerはrecyclerViewAdapterとはもう一度呼び出されません
public void onResume() {
super.onResume();
recyclerView.setLayoutManager(new LinearLayoutManager(getActivity()));
recyclerAdapter = new UsersRecyclerAdapter(getContext());
suserList = Collections.emptyList();
recyclerView.setAdapter(recyclerAdapter);
recyclerAdapter.setItems(paginator.generatePage(currentPage));
このRecyclerViewは、サービスからのもののリストを示します。私の質問は初めてsetItems
メソッドが動作し、リストがRecyclerViewに表示されますが、paginator.generatePage(currentPage)
が新しいデータリストを生成すると、私のRecyclerViewは新しいデータを表示しません。
これは私のリサイクラーViewadapterの方法であって、
public void setItems(List<Suser> items) {
if (items == null)
throw new IllegalArgumentException("Cannot set `null` item to the Recycler adapter");
susers.clear();
susers.addAll(items);
notifyDataSetChanged();
}
はViewPagerの内側にロードされた私のフラグメントを再び更新しないと、このrecyclerAdapter.setItems(paginator.generatePage(currentPage));
が再び呼び出されていないようです。 あなたの提案は何ですか?
**************私は、私が作成したActivity.thenにメインフラグメントを変更した
編集*************私のアクティビティへのコールバックと最後に、このコールバックをフラグメント化して実装しました。notifyDataSetChanged
を呼び出しましたが、Recycler Viewのリストは変更されていませんか?
@Override
public void onLoad() {
recyclerAdapter.notifyDataSetChanged();
}
リサイクルビューは、最初はまだ1ページを表しています。 OnStartメソッドのオーバーライドメソッドとアダプタのコードで へ
あなたはONSTARTオーバーライドであなたの方法を使用している場合、それは私がいずれかを使用していないHemalHerath.no @リフレッシュ – HemalHerath
を維持します方法。どうすれば使える? –
私はなぜあなたはonResumeメソッド – HemalHerath