アプリを再設計しようとしていますが、最善の方法がわかりません。
現在、ヘッダー/親アイテムとしていくつかのワークアウトを含む展開可能なリスト ビューがあります。各ワークアウトには、4 週間を表す 4 つの子項目があります。ユーザーが 1 週間クリックすると、3 つのタブ フラグメント (月曜、水曜、金曜を表す) を持つ新しいアクティビティに送信されます。これらのフラグメントにはそれぞれリサイクラー ビューがあり、クリックされたアイテム (カスタム オブジェクト) に応じてデータが入力されます。以下に小さな例を示します。
//RECYCLERVIEW
final RecyclerView rv = (RecyclerView) view.findViewById(R.id.mRecyclerMon);
rv.setLayoutManager(new LinearLayoutManager(this.getActivity()));
rv.setAdapter(new MyRecyclerAdapter(this.getActivity(), getMondayWorkout(), 1));
private ArrayList<Workout> getMondayWorkout() {
ArrayList<Workout> workout = new ArrayList<>();
switch (workout3) {
case "w29w1": {
Workout workouts = new Workout(getActivity().getString(R.string.benchpress), "50", "5", bench50, false);
workout.add(workouts);
workouts = new Workout(getActivity().getString(R.string.benchpress), "60", "4", bench60, false);
workout.add(workouts);
それはほんの一例です。これでもいいのですが、もっと使いやすくしたいです。私のアイデアは、ユーザーにワークアウトを選択してもらい、各ワークアウトをイベントとして Caldroid カレンダーに追加してもらい、そのワークアウト (たとえば、月曜日) をクリックすると、以前にリサイクラー ビューで使用していたのと同じビューが使用されるようにすることです。これまでのところ、私はこれらすべてを行う方法を知っていると信じています.
私の質問は、保存機能を実装したいということです。そのため、ユーザーがワークアウトを完了すると、Caldroid の対応する日に保存され、その日の背景色が変更されるため、ユーザーはワークアウトが完了したことがわかります。ワークアウトを保存してユーザーがその日に戻ってチェックアウトできるようにする方法がわかりません彼らはクリックします。また、メモを取るオプションを追加したいと思います。これにより、さらに複雑になります..
基本的には、ユーザーが実行したワークアウトを保存すると、そのアクティビティのすべての部分、リサイクラー ビュー アイテム (チェックマークの状態を含む)、およびそのワークアウトで取ったメモが保存されるようにしたいと考えています。
私はsqliteを使用することを考えましたが、カスタムオブジェクトを含むArrayList / recyclerviewの状態をsqliteに保存し、アイテムが保存されてユーザーが特定の日付をクリックした後にそれを参照する方法が正確にわかりません
誰かが少しでも助けてくれたり、正しい方向に私を向けることができれば、それは大歓迎です! どこから始めればいいのかわからない!どうもありがとう!