android AsyncTask的参数理…

    xiaoxiao2021-04-18  62

    原文地址:android AsyncTask的参数理解 作者:king AsyncTask定义了三种泛型类型 Params,Progress和Result。 Params 启动任务执行的输入参数,比如HTTP请求的URL。Progress 后台任务执行的百分比。Result 后台执行任务最终返回的结果,比如String.   AsyncTask<Params,Progress,Result> 那所谓的传参数是怎么样的呢?我们来看一个例子. public class Test2 extends Activity { private String data; private TextView mTv; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.test); data = "king love"; mTv=(TextView)findViewById(R.id.name); Mytask task = new Mytask(); task.execute(data); } private class Mytask extends AsyncTask<String, Void, String> { String iData=""; @Override protected String doInBackground(String... params) { iData ="lin "+params[0]; return iData; } @Override protected void onPostExecute(String result) { mTv.setText(result); super.onPostExecute(result); } } } 红色的地方即为传参数. 我们知道,我们明明指定的传入的参数为一个String类型,为什么在doInBackground中的形参却为一个字符串数组呢? 原来这就是它的规定,我们可以传一个String类型的字符串给它,也可以传一个String类型的字符数组给它.如果我们是传一个字符串,则我们要得到它,只要用 params[0]首地址就可以得到了. result为doInBackground执行完后返回的结果.
    转载请注明原文地址: https://ju.6miu.com/read-674918.html

    最新回复(0)