android中回调函数机制完全解析

1.在要调用的业务操作中,创建一个接口,在接口中创建方法,这个方法表示的是我们原先要在业务类中执行的操作

public interface BackUpSmsListener {
	/**
	 * 设置总进度
	 *
	 * @param max
	 */
	public void max(int max);

	/**
	 * 设置当前进度
	 *
	 * @param progress
	 */
	public void progress(int progress);
}

2.将接口以参数的形式传递给业务方法,并在业务方法中,执行接口中的方法,将获取的值设置到接口方法中

public static void getAllSMS(Context context,BackUpSmsListener listener){

	listener.max(count);

	listener.progress(progress);

}

3.在activity中调用业务方法,创建一个接口,并实现接口中的方法,同时在接口的方法中就可以获取我们想要的数据

new Thread(){
	public void run() {
		SmsEngine.getAllSMS(getApplicationContext(),new BackUpSmsListener() {

			@Override
			public void progress(int progress) {
				//progressDialog.setProgress(progress);
				pb_atool_sms.setProgress(progress);
			}

			@Override
			public void max(int max) {
				//progressDialog.setMax(max);
				pb_atool_sms.setMax(max);
			}
		});
		//progressDialog.dismiss();
	};
}.start();
上一篇:JavaScript之闭包就是个子公司


下一篇:如何将生产环境的服务Docker镜像拉取到本地进行调试