星空网 > 软件开发 > 操作系统

android 回调函数二:应用实例

前言:如果对android回调的概念不明白的请看:android 回调函数一:基本概念

1、定义接口

package com.app.util;public interface ZYJCallBack {  public void dataResult( String resultString ) ;   public void progress( Integer progress ) ;   public void start() ;}


2、实体

package com.app.util;import android.os.AsyncTask;public class ZYJAsyncTask extends AsyncTask< String , Integer , String > {  ZYJCallBack zyjCallBack ;  //开始  @Override  protected void onPreExecute() {    super.onPreExecute();    zyjCallBack.start();  }  /**   * 特别注意:publishProgress( 10 );    * 这一句一定要写,否则 onProgressUpdate() ,这个方法不会被回调   */  @Override  protected String doInBackground(String... params) {    publishProgress( 10 );      publishProgress( 20 );    publishProgress( 50 );    publishProgress( 100 );    return "哈哈哈,操作完成了" ;  }  //onProgressUpdate方法用于更新进度信息   @Override   protected void onProgressUpdate(Integer... progresses) {     zyjCallBack.progress( progresses[0] );  }   @Override  protected void onPostExecute(String result) {    super.onPostExecute(result);    zyjCallBack.dataResult( result );  }  public void setCallBackListener(ZYJCallBack zyjCallBack){    this.zyjCallBack = zyjCallBack ;  }}

 

3、回调

package com.android10;import com.app.util.ZYJAsyncTask;import com.app.util.ZYJCallBack;import android.app.Activity;import android.os.Bundle;public class MainActivity extends Activity {  @Override  public void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView( R.layout.activity_main );    ZYJAsyncTask zyjAsyncTask = new ZYJAsyncTask() ;    zyjAsyncTask.setCallBackListener( new ZYJCallBack() {            @Override      public void start() {        System.out.println("ssss开始了" ) ;      }            @Override      public void progress(Integer progress) {        System.out.println("ssss进度为: " + progress ) ;      }            @Override      public void dataResult(String resultString) {        System.out.println("ssss结果是:" + resultString ) ;      }    });        zyjAsyncTask.execute( "" ) ;  }}


4、运行结果

ssss开始了
ssss进度为: 10
ssss进度为: 20
ssss进度为: 50
ssss进度为: 100

ssss结果是:哈哈哈,操作完成了

 




原标题:android 回调函数二:应用实例

关键词:Android

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

劲猴知识产权:https://www.ikjzd.com/w/1573201492736122881
京麦网络:https://www.ikjzd.com/w/1573201493260410882
惊鹊云:https://www.ikjzd.com/w/1573201493809864706
极牛跨境:https://www.ikjzd.com/w/1573201498939842562
深圳市就为科技有限公司:https://www.ikjzd.com/w/1573201502269775874
极兔国际物流:https://www.ikjzd.com/w/1573201511996366850
长治婚庆女司仪和主持人:https://www.vstour.cn/a/366176.html
北京丰台区水上乐园哪家好玩?:https://www.vstour.cn/a/366177.html
相关文章
我的浏览记录
最新相关资讯
海外公司注册 | 跨境电商服务平台 | 深圳旅行社 | 东南亚物流