-
发送一个新的事件
-
@param object
*/
public void post(Object object){
bus.onNext(object);
}
/**
- 根据传递的 eventType 类型返回特定类型(eventType)的 被观察者
*/
public Observable toObservable(Class eventType){
return bus.ofType(eventType);
}
}
首先我们要定义一个接受数据的实体类:
public class User {
private String username;
private String password;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public User(String username, String passwo
rd) {
this.username = username;
this.password = password;
}
}
接下来就是我们主界面接受数据的主界面:
public class MainActivity extends AppCompatActivity {
private TextView name;
private TextView sign;
private Button button;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initView();
}
private void initView() {
name = (TextView) findViewById(R.id.name);
sign = (TextView) findViewById(R.id.sign);
button = (Button) findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(MainActivity.this,Test1Activity.class);
startActivity(intent);
}
});
/**
- 接受现实过来的数据
*/
RxBus.getDefault().toObservable(User.class)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Action1() {
@Override
public void call(User user) {
name.setText(user.getUsername());
sign.setText(user.getPassword());
}
});
}
}
再者就是发送数据的界面:
public class Test1Activity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_test1);
initView();
}
private void initView() {
User user = new User(“android-RxBus”,“不一样的烟火”);
RxBus.getDefault().post(user);
}
}