1) Otto sınıfının heryerden ulaşılabilecek bir constructorı oluşturulur .
2) Kullanılacak olan sınıfa register edilir .(kayıt edilir)
3) Mesaj tipi oluşturulur .
4) Mesaj tipine subscribe olunur .
5) Mesaj gönderilir - yakalanır. Şimdi sırayla açıklayalım .
1) Otto sınıfının heryerden ulaşılabilecek bir constructorı oluşturulur . Bunu yapmanın en kolay yolu bir tane application sınıfı açılır ve içinde static bir nesne oluşturulur .
public class ApplicationClass extends android.app.Application {
public static Bus busProvider;
@Override
public void onCreate() {
super.onCreate();
busProvider = new Bus();
}
}
2) Kullanılacak olan sınıflar register edilir -kayıt edilir-.(hem mesajı gönderecek hem yakalayacak kısım ).
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ApplicationClass.busProvider.register(this);
}
3) Mesaj tipi oluşturulur . (Bir sınıftan diğerine bir String nesnesi taşınacak)
public class Message {
public String count;
public Message(String count) {
this.count = count;
}
}
4) Mesaj tipine subscribe olunur . (Gelecek mesajın yakalandığı yer)
@Subscribe void callingMessage (Message message){
message.count;
}
5)Mesaj gönderilir. (Senkron olarak o an register olan sınıftaki method tetiklenir )
plus.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
ApplicationClass.busProvider.post(new Message("plus"));
}
İlgili örneği linkten bulabilirsiniz
0 yorum:
Yorum Gönder