Il est la première fois que j'utilise cette bibliothèque, mais je suivais tutoriel this vidéo pour envoyer des données par fragments, mais dans mon cas, il est juste Activités .. Alors ce que je l'ai faitdonnées passage d'une activité à l'aide de Otto ne fonctionne pas
activité que je vous envoie des données:
public void onClick(View view) {
String passing_data = new Gson().toJson(user);
BusStation.getBus().post(new MessageData(passing_data));
Intent intent = new Intent(activity,UserAdsView.class);
activity.startActivity(intent);
}
Busstation classe:
public class BusStation {
private static Bus bus = new Bus();
public static Bus getBus() {
return bus;
}
}
MessageData Classe:
public class MessageData {
private String msgData;
public MessageData(String msgData) {
this.msgData = msgData;
}
public String getMsgData() {
return msgData;
}
}
Et enfin à l'activité de UserAdsView:
@Override
protected void onResume() {
super.onResume();
BusStation.getBus().register(this);
}
@Override
protected void onPause() {
super.onPause();
BusStation.getBus().unregister(this);
}
@Subscribe
public void recievedData(MessageData messageData){
target = messageData.getMsgData();
Toast.makeText(getApplicationContext(), target, Toast.LENGTH_SHORT).show();
}
Comme on l'a mentionné sur la vidéo, cette méthode recievedData
devrait être congédié!
Alors ce que je dois faire? Remplacer un onStart et BusStation.getBus(). Register (this); ? –
Non. Voir ma mise à jour. Vous pouvez simplement envoyer des données à l'activité dans le 'Intent' – mallaudin
Vous pouvez utiliser' Sticky Event' dans ce cas. – mallaudin