现在的位置: 首页 > 综合 > 正文

interface 回调函数–实现子线程类对主线程类界面的控制

2018年06月09日 ⁄ 综合 ⁄ 共 675字 ⁄ 字号 评论关闭

实现子线程对主线程界面的控制方法有两种方法:

1、主界面线程建立消息处理机制,然后调用子线程(传递主线程消息处理句柄Handler)进行事务处理,事务处理完成后,通过主线程的消息Handler发送消息给主线程,由主线程控制界面。

2、主线程调用子线程,并通过在子线程中调用主线程的回调函数来实现,方法如下:

一、子线程类定义接口并将该接口设置为该类的私有成员

public class UpdateManager 
{
	//设置该接口类型的私有成员
	private UpdateCallback callback;	
	//接口定义,
	public interface UpdateCallback 
	{		
		public void updateProgress(int progress);		
	}
}

二、主线程类实现接口,有两种方法

方法一:通过类继承(实现)接口的方式

public class MainActivity extends Activity implements UpdateManager.UpdateCallback
{
	 //接口内函数的实现
	 public void updateProgress(int progress)
	{
	   //进行进度条更新处理
	 }
}

方法二:通过new 一个接口实现方式:

UpdateManager.UpdateCallback appUpdateCb = new UpdateManager.UpdateCallback() 
{
		public void updateProgress(int progress) 
		{
			//进行进度条更新处理
		}
}

三、主线程调用子线程,子线程进行事务处理,完成后,调用接口实现对主界面的更新

抱歉!评论已关闭.