安卓EventBus的使用
来源:互联网 发布:mac连wifi需要wpa2密码 编辑:程序博客网 时间:2024/05/21 01:30
Androidstudio使用步骤:
1、导入依赖compile 'org.greenrobot:eventbus:3.0.0'
2.、Activity与服务传递数据
bean代码
public class MessageEvent { public String text; public MessageEvent(String text) { this.text = text; } public String getText() { return text; } public void setText(String text) { this.text = text; }}
activity代码
/** *Activity与服务之间传递数据 */public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Intent intent = new Intent(this,MyService.class); startService(intent); } //2、添加注解,根据传递数据的类型判断是否执行(服务里面传递的数据类型为MessageEvent,服务开启后即执行这里)服务代码//priority:优先级,优先级高的方法先执行,并可以通过EventBus.getDefault().cancelEventDelivery(messageEvent);方法停止传递 //threadMode:指定线程模式
//POSTING:默认模式,订阅和事件发送在同一线程下进行
//MAIN:订阅在主线程下进行,可以直接修改UI
//BACKGROUND:如果事件发送在主线程,则订阅在子线程下进行,如果事件发送在子线程,则订阅也在该子线程中进行
//ASYNC:如果事件发送在主线程,则订阅在子线程下进行,如果事件发送在子线程,则订阅会在其他子线程中进行
@Subscribe(threadMode = ThreadMode.MAIN,priority = 10)public void show(MessageEvent event) {Log.e("获取到数据", event.getText() ); }//如果服务里面传递的数据类型为Person,就执行这里,Person这个bean就不写了
@Subscribe(threadMode = ThreadMode.MAIN,priority = 100) public void show(Person person) { Log.e("获取到数据", person.getName() ); }@Override protected void onStart() { super.onStart(); //1、注册 EventBus.getDefault().register(this); } @Override protected void onDestroy() { super.onDestroy(); //3、解绑 EventBus.getDefault().unregister(this); }}
public class MyService extends IntentService { public MyService() { super("MyService"); } @Override protected void onHandleIntent( Intent intent) { //传递数据 EventBus.getDefault().post(new MessageEvent("FromService")); }}
阅读全文
0 0
- 安卓EventBus的使用
- 安卓组件通信:eventBus的使用
- 安卓高级EventBus使用详解
- 安卓使用EventBus实现消息传递
- 安卓EventBus 两步走
- 安卓 EventBus
- 安卓开发之EventBus的使用分享以及例子源码
- 安卓Android事件总线EventBus简单使用
- EventBus 《二》 Android EventBus的简单使用
- EventBus的使用初试
- EventBus的使用
- EventBus的使用
- EventBus的简单使用
- EventBus的使用
- eventbus的使用
- EventBus的初步使用:
- EventBus的使用
- EventBus的简单使用
- 模板模式的初学
- FromData---ajax提交数据
- JVM年轻代(young generation)老年代(old generation tenured)持久代(permanent generation)GC
- Linux(RedHat)学习之路1.0
- h5输入框调起ios端键盘fixed失效
- 安卓EventBus的使用
- mybatis关系映射之一对多和多对一
- Idea、Eclipse 添加Maven依赖
- Sqlserver根据字段查找表和根据字段值查找表的几个方法
- Codeforces 322C Ciel and Robot【思维+模拟】细节很多= =
- c++ vector(向量)使用方法详解(顺序访问vector的多种方式)
- 下拉多选
- 串口设备数据的接收和处理
- CPP入门基础知识(一)