您的位置:首页 > 移动开发 > Android开发

Android 接口使用

2016-07-22 15:31 477 查看
在找关于接口回调的资料时,很多都是与button有关的,于是自己就总结了一下接口的最基本的使用方法,以及回调方法。最基本的接口分三块:第一个是询问方,即监听者;第二个是回答者,第三个是接口类。询问方:ThreadR r=new ThreadR();new Thread(r).start();r.setAnInterface(this);r.setAnInterface(new ContactInterface() {@Overridepublic void answer(String answer) {Log.i("Thread's answer:",answer+"zcdfsfsdf");}});在这里新建了一个对象,并对该对象通过setAnInterface()进行监听以获得数据。回答者:public class ThreadR implements Runnable{public ContactInterface anInterface;String answer="Thread";int i=0;public void setAnInterface(ContactInterface anInterface){this.anInterface=anInterface;}@Overridepublic void run() {while (i<5) {try {Thread.sleep(1000);if (i == 3)anInterface.answer(answer+i);else {anInterface.answer(i+"zzdfsdf");}i++;} catch (InterruptedException e) {e.printStackTrace();}}}}在这里,先声明了接口,及其调用方式。通过anInterface.answer()向接口传送数据。接口类:public interface ContactInterface {public void answer(String answer);}接口及其抽象方法。这样我们就完成了一个最基本的接口回调方法!下面提一下接口回调的三种方式:第一种便是以上方式。第二种:询问方中使用:r.setAnInterface(this);并将Activity实现该接口:
implements ContactInterface
续写其方法:
@Override
public void answer(String answer) {
Log.i("implement answer:",answer);
}
回答方不变
第三种
回答者中添加:
anInterface = (ContactInterface) activity;
询问方中使用:并将Activity实现该接口:implements ContactInterface
续写其方法:
@Override
public void answer(String answer) {
Log.i("implement answer:",answer);
}
该方法在Frgement向Activity传递消息中使用较多。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android