Commit 7c54dcf2 authored by Lucas NAURY's avatar Lucas NAURY

Envoi des données de la page de création d'annonce vers la page d'accueil

parent 5e7c677a
package com.example.tpleboncoin.models;
public class Annonce {
import android.os.Parcel;
import android.os.Parcelable;
import androidx.annotation.NonNull;
public class Annonce implements Parcelable {
static int nbAnnonces = 0;
private int id;
private String titre;
......@@ -33,4 +38,36 @@ public class Annonce {
public int getImage(){return image;}
// Parcelable
@Override
public int describeContents() {
return 0;
}
@Override
public void writeToParcel(@NonNull Parcel parcel, int i) {
parcel.writeString(titre);
parcel.writeString(adresse);
parcel.writeDouble(prix);
parcel.writeInt(image);
parcel.writeInt(id);
}
public static final Parcelable.Creator<Annonce> CREATOR
= new Parcelable.Creator<Annonce>() {
public Annonce createFromParcel(Parcel in) {
return new Annonce(in);
}
public Annonce[] newArray(int size) {
return new Annonce[size];
}
};
private Annonce(Parcel in) {
titre = in.readString();
adresse = in.readString();
prix = in.readDouble();
image = in.readInt();
id = in.readInt();
}
}
......@@ -16,7 +16,7 @@ import androidx.navigation.Navigation;
import com.example.tpleboncoin.R;
import com.example.tpleboncoin.databinding.FragmentAjoutAnnonceBinding;
import com.example.tpleboncoin.ui.home.HomeFragment;
import com.example.tpleboncoin.models.Annonce;
import com.google.android.material.snackbar.Snackbar;
public class AjoutAnnonceFragment extends Fragment {
......@@ -45,14 +45,17 @@ public class AjoutAnnonceFragment extends Fragment {
Snackbar.make(view, "Veuillez remplir les champs pour créer l'annonce", Snackbar.LENGTH_LONG).show();
return;
}
Navigation.findNavController(view).navigate(R.id.navigation_home);
//Intent voirNouvelleListe = new Intent(HomeFragment.this, Accelerometre.class);
//startActivity(voirAccel);
// On créé l'objet de la nouvelle annonce
Annonce nouvelleAnnonce = new Annonce(titreAnnonce.getText().toString(), adresseAnnonce.getText().toString(), 0, Double.parseDouble(prixAnnonce.getText().toString()));
// On navigue vers la page d'accueil en passant la nouvelle annonce comme paramètre
Bundle bundle = new Bundle();
bundle.putParcelable("nouvelleAnnonce", nouvelleAnnonce);
Navigation.findNavController(view).navigate(R.id.navigation_home, bundle);
}
});
......
package com.example.tpleboncoin.ui.home;
import static android.util.Log.DEBUG;
import android.os.Bundle;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
......@@ -11,6 +14,7 @@ import androidx.fragment.app.Fragment;
import androidx.lifecycle.ViewModelProvider;
import com.example.tpleboncoin.databinding.FragmentHomeBinding;
import com.example.tpleboncoin.models.Annonce;
public class HomeFragment extends Fragment {
......@@ -26,6 +30,13 @@ public class HomeFragment extends Fragment {
final TextView textView = binding.textHome;
homeViewModel.getText().observe(getViewLifecycleOwner(), textView::setText);
// On récupère l'annonce qui vient d'être créée s'il y en a une
if(getArguments() != null && getArguments().getParcelable("nouvelleAnnonce") != null){
Annonce newAnnonce = getArguments().getParcelable("nouvelleAnnonce");
Log.d("HomeFragment", newAnnonce.getTitre());
}
return root;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment