diff --git a/app/src/main/java/com/example/outilcuisson/AfficherFragment.java b/app/src/main/java/com/example/outilcuisson/AfficherFragment.java index 0542358..6ed22f2 100644 --- a/app/src/main/java/com/example/outilcuisson/AfficherFragment.java +++ b/app/src/main/java/com/example/outilcuisson/AfficherFragment.java @@ -77,10 +77,6 @@ public class AfficherFragment extends Fragment { listeCuissons.setAdapter(adapterCuissons); registerForContextMenu(listeCuissons); -// cuissonAffichees.add(new Cuisson("test", 0, 40, 180)); - adapterCuissons.notifyDataSetChanged(); - listeCuissons.requestLayout(); - return view; } @@ -89,9 +85,10 @@ public class AfficherFragment extends Fragment { * * @param cuisson La cuisson à ajouter */ - public static void addCuisson(Cuisson cuisson) { - cuissonAffichees.add(cuisson.toString()); - System.out.println(cuissonAffichees); + public void addCuisson(Cuisson cuisson) { + adapterCuissons.add(cuisson.toString()); + adapterCuissons.notifyDataSetChanged(); + listeCuissons.requestLayout(); } /** diff --git a/app/src/main/java/com/example/outilcuisson/AjouterFragment.java b/app/src/main/java/com/example/outilcuisson/AjouterFragment.java index e5a32eb..a8fe383 100644 --- a/app/src/main/java/com/example/outilcuisson/AjouterFragment.java +++ b/app/src/main/java/com/example/outilcuisson/AjouterFragment.java @@ -6,6 +6,7 @@ package com.example.outilcuisson; +import android.content.Context; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; @@ -14,6 +15,7 @@ import android.widget.Button; import android.widget.EditText; import android.widget.TimePicker; +import androidx.annotation.NonNull; import androidx.fragment.app.Fragment; import com.example.outilcuisson.OutilCuisson; @@ -34,15 +36,30 @@ public class AjouterFragment extends Fragment { return new AjouterFragment(); } + public interface EcouteurAjout { + void recevoirCuisson(Cuisson cuisson); + } + + private EcouteurAjout activiteQuiMEcoute; + + @Override + public void onAttach(@NonNull Context context) { + super.onAttach(context); + + activiteQuiMEcoute = (EcouteurAjout) context; + } + @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); } @Override - public View onCreateView(LayoutInflater inflater, ViewGroup container, + public View onCreateView(LayoutInflater inflater, + ViewGroup container, Bundle savedInstanceState) { - View view = inflater.inflate(R.layout.ajouter_fragment, container, false); + View view = inflater.inflate(R.layout.ajouter_fragment, container, + false); /* Liste des éléments intéractifs */ inputPlat = view.findViewById(R.id.input_plat); @@ -51,7 +68,8 @@ public class AjouterFragment extends Fragment { btnEffacer = view.findViewById(R.id.btn_effacer); btnValider = view.findViewById(R.id.btn_valider); - /* Initialise le TimePicker en format 24h avec par défaut la valeur 0h40 */ + /* Initialise le TimePicker en format 24h avec par défaut la valeur + 0h40 */ inputDuree.setIs24HourView(true); inputDuree.setHour(0); inputDuree.setMinute(40); @@ -67,20 +85,23 @@ public class AjouterFragment extends Fragment { int mDuree = inputDuree.getMinute(); /* Convertis la température en entier */ - int temperature = txtTemperature.isEmpty() ? -1 : Integer.parseInt(txtTemperature); + int temperature = txtTemperature.isEmpty() ? -1 : Integer.parseInt( + txtTemperature); /* Cas ou les valeurs ne sont pas valides */ if (!OutilCuisson.platValide(txtPlat) - || !OutilCuisson.heureCuissonValide(hDuree) - || !OutilCuisson.minuteCuissonValide(mDuree) - || !OutilCuisson.temperatureValide(temperature)) { + || !OutilCuisson.heureCuissonValide(hDuree) + || !OutilCuisson.minuteCuissonValide(mDuree) + || !OutilCuisson.temperatureValide(temperature)) { System.out.println("Erreur"); } - /* Cas ou les valeurs sont valides : on ajoute une nouvelle cuisson dans la liste a afficher */ - AfficherFragment.addCuisson(new Cuisson(txtPlat, hDuree, mDuree, temperature)); + /* Cas ou les valeurs sont valides : on ajoute une nouvelle + cuisson dans la liste a afficher */ + activiteQuiMEcoute.recevoirCuisson( + new Cuisson(txtPlat, hDuree, mDuree, temperature)); }); /* diff --git a/app/src/main/java/com/example/outilcuisson/MainActivity.java b/app/src/main/java/com/example/outilcuisson/MainActivity.java index 229bc7b..c2ee228 100644 --- a/app/src/main/java/com/example/outilcuisson/MainActivity.java +++ b/app/src/main/java/com/example/outilcuisson/MainActivity.java @@ -12,7 +12,7 @@ import androidx.viewpager2.widget.ViewPager2; import com.google.android.material.tabs.TabLayout; import com.google.android.material.tabs.TabLayoutMediator; -public class MainActivity extends AppCompatActivity { +public class MainActivity extends AppCompatActivity implements AjouterFragment.EcouteurAjout { @Override protected void onCreate(Bundle savedInstanceState) { @@ -56,4 +56,15 @@ public class MainActivity extends AppCompatActivity { } return super.onOptionsItemSelected(item); } + + @Override + public void recevoirCuisson(Cuisson cuisson) { + AfficherFragment fragmentAModifier = + (AfficherFragment) getSupportFragmentManager().findFragmentByTag( + "f0"); + + if (fragmentAModifier != null) { + fragmentAModifier.addCuisson(cuisson); + } + } } \ No newline at end of file