本文共 1286 字,大约阅读时间需要 4 分钟。
在我们使用线程的时候,实现runable接口处理自己的逻辑,将runable传给线程对象,线程就可以调用我们的处理函数了
使用listview的时候,自定义一个适配器,传给listview,listview就可以调用我们自定义适配器中的接口函数了
我们也可以在自己的类中创建接口回调,供别人使用:
模拟一个短信备份的工具类,短信备份函数接收一个参数作为回调接口传入,在备份过程调用回调函数处理用户逻辑,达到友好的交互
短信备份类:
public class SmsUtils { //短信备份回调接口类,由使用者实现 public interface SmsBackUpCallBack{ //备份之前调用,参数为短信总数 public void beforeSmsBackup(int size); //备份过程中调用,参数为备份到第几条了 public void ateferSmsBackup(int progress); } public static boolean smsBackUp(Context context, SmsBackUpCallBack callBack) throws Exception { int size = 50;//模拟50条短信 callBack.beforeSmsBackup(size); int mProgress; for (mProgress=1;mProgress<51;mProgress++) { callBack.ateferSmsBackup(mProgress); SystemClock.sleep(500); } return true; }}使用短信备份类:用户自己实现两个接口回调函数的逻辑处理,调用备份函数的时候传递给我们就可以
boolean result = SmsUtils.smsBackUp(getApplicationContext(), new SmsUtils.SmsBackUpCallBack() { public void beforeSmsBackup(int size) { mProgressDialog.setMax(size);//设置进度条 } public void ateferSmsBackup(int progress) { mProgressDialog.setProgress(progress);//更新进度条 } });
转载地址:http://cbxui.baihongyu.com/