Android中回调接口的使用
16lz
2021-12-04
MainActivity如下:
package cn.testcallback;import android.os.Bundle;import android.app.Activity;/** * Demo描述: * Android中回调接口的使用 */public class MainActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);testCallBack();}private void testCallBack(){AskQuestion askQuestion=new AskQuestion();String questionString="Do you love me ?";System.out.println("The question is : "+questionString);askQuestion.askQuestion(questionString);}}
CallBackInterface如下:
package cn.testcallback;/** * 定义一个接口 * 接口中有一方法 */public interface CallBackInterface {public void answerQuestion(String result);}
AskQuestion如下:
package cn.testcallback;public class AskQuestion implements CallBackInterface{ public void askQuestion(final String questionString){ new Thread(){ public void run() { AnswerQuestion answerQuestion=new AnswerQuestion(); answerQuestion.receiveQuestion(AskQuestion.this, questionString); }; }.start(); }@Overridepublic void answerQuestion(String result) { System.out.println("The answter is : "+result);}}
AnswerQuestion如下:
package cn.testcallback;public class AnswerQuestion { public void receiveQuestion(CallBackInterface callBackInterface,String questionString){try { Thread.sleep(3000);} catch (Exception e) {}String result="YES!!!";callBackInterface.answerQuestion(result); }}
main.xml如下:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="回调的使用" android:layout_centerInParent="true" /></RelativeLayout>
更多相关文章
- android——android中测试框架AndroidTestCase的使用
- Android状态栏提醒(Notification,NotificationManager)的使用
- Android中设置关键字高亮的方法
- 安卓开发 - B站开源的ijkplayer播放器配置使用
- 【Android】SQLite使用
- android Progressbar使用
- android 代码混淆问题解决
- Android(安卓)MediaPlayer基本使用方式
- 【Android】UI-shape的使用