私は実際RecyclerView
を持っているfragment
Xを持っています、Xは検索ビューを持っています、私は何かを検索し、いくつかの行にRecyclerView
をフィルタリングするために検索ビューを使用します。フィルタリングの後、ユーザがある行をクリックすると別のfragment
にYと移動します。ユーザがクリックするとXに戻ります。私の仕事はXがこの後に検索結果を保持し続けることです。これを達成するための最良のアプローチは何ですか?フラグメントの検索結果を復元するにはどうすればよいですか?
0
A
答えて
0
Fragment
には、onSaveInstanceState
を特権的に上書きし、検索入力フィルタを格納するようにします。このようにしてonCreate
を上書きすると、RecyclerView
に保存されたフィルタが適用されます。
別のフラグメントに移動する前に、からFragmentManager
を取得し、フラグメントをホストするActivity
に一時的に保存してください。コンフィグレーションの変更(回転)のためにアクティビティの状態を正しく保存しないと、この状態は失われる可能性があります。onSaveInstanceState
をActivity
にオーバーライドする必要があります。または、Fragment.SavedState
をグローバルスコープ(一部の静的フィールドまたはApplication
)に保存します。
前のフラグメントに戻るときは、Fragment.SavedState
のフラグメントを再作成します。 e。 Fragment#setInitialSavedState(Fragment.SavedState)
を呼び出します。
詳細については、私のresearchを参照してください。
0
シングルトンパターンを使用してデータを保存できます。
など。
// DataManager.java
public class DataManager {
private static DataManager thisInstance;
// Declare instance variables
List<String> searchResultItems;
public static DataManager getSharedInstance() {
if (thisInstance == null) {
thisInstance = new DataManager();
}
return thisInstance;
}
private DataManager() {
searchResultItems = new ArrayList<>();
}
public List<String> getSearchResultItems() {
return searchResultItems;
}
public void setSearchResultItems(List<String> searchResultItems) {
this.searchResultItems = searchResultItems;
}
}
今、あなたはどこからでもデータを保存し、retriveことができます。
//セッター
DataManager.getSharedInstance().setSearchResultItems(items);
//ゲッター
List<String> items= DataManager.getSharedInstance().getSearchResultItems();
関連する問題
- 1. 検索結果にリダイレクトするにはどうすればよいですか?
- 2. Googleの検索結果でURLの出現を検索するにはどうすればよいですか?
- 3. haystack検索で検索結果の数を取得するにはどうすればよいですか?
- 4. 検索エンジンにサイトの検索結果を表示させるにはどうすればよいですか?
- 5. ブラウザで以前の結果からデータを復元するにはどうすればよいですか?
- 6. 検索結果の古いデータをページングで検出するにはどうすればよいですか?
- 7. Google検索のような結果スニペットをデザインするにはどうすればよいですか?
- 8. これらの検索結果をJavaScriptでフィルタリングするにはどうすればよいですか?
- 9. 以前に表示されたフラグメントを復元するにはどうすればよいですか?
- 10. DuckDuckGo APIに基づいて検索結果を取得するにはどうすればよいですか?
- 11. 検索結果に最も近い値を予測するにはどうすればよいですか?
- 12. 検索結果に続いて文字列をラップするにはどうすればよいですか?
- 13. アプリケーションのバックエンドからGoogle検索結果を取得するにはどうすればよいですか?
- 14. 検索結果からluceneのdocIdを取得するにはどうすればよいですか?
- 15. コンテンツの検索結果からタグを削除するにはどうすればよいですか?
- 16. 検索結果ページでタイトル(「検索結果」)の設定を解除するにはどうすればよいですか?
- 17. Mysqlデータベースからさらに検索結果を出力するにはどうすればよいですか?
- 18. Visual Studio 2017で検索結果の形式を変更するにはどうすればよいですか?
- 19. Excel VBAでGoogleの検索結果を使用するにはどうすればよいですか?
- 20. Google検索結果でhttps:// URLの一部を削除するにはどうすればよいですか?
- 21. WordPressで検索結果のURL構造を変更するにはどうすればよいですか?
- 22. Googleの検索結果を動的なWebページにリダイレクトするにはどうすればよいですか?
- 23. divにGoogle検索APIの結果を表示するにはどうすればよいですか?
- 24. imacroからgoogleを検索して結果を保存するにはどうすればよいですか?
- 25. 検索結果ページのindexed_searchのsearchformを消去するにはどうすればよいですか?
- 26. Giphy API - 検索結果から画像を表示するにはどうすればよいですか?
- 27. 検索結果/キーワードからpage要素を削除するにはどうすればよいですか?
- 28. クローム開発者ツールの検索結果からコピーするにはどうすればよいですか?
- 29. Google検索結果ウィンドウのサイズを変更するにはどうすればよいですか?
- 30. コンテンツスクリプトのGoogle検索結果ページを変更するにはどうすればよいですか?
ポストあなたのコードはここにあります。 –