Service中更新Activity的UI有2种方法,用广播实现的文章很多,本文是通过回调实现的。
具体步骤如下:
一、MyService中:
1. 声明接口CallBack 并为其添加抽象方法onDataChange(String data); 目的是为了在Activity中实例化。
2. 声明一个callBack,并添加set方法; 为了把Activity中实例化的callBack传给他。
3.在线程中 if (callBack != null ) 调用onDataChange( changingData)方法,并传入一直改变的参数;
4. 声明MyBinder,添加getService方法,返回MyService. this 。
二、Activity中:
1.通过onServiceConnected传入的Binder获得myService对象。
2. myService. setCallBack(new CallBack){...... 通过匿名实例化接口的方式,重写onDataChange() ,