我有一个具有以下工作流程的应用程序:
用户输入研究关键字的主要活动 - >点击"搜索"按钮 - >启动AsyncTask在webservice上进行查询(在doInBackground方法中处理查询) - >创建一项新活动。
现在我想在这个新活动中显示webservice结果。我能怎么做 ?我知道我应该使用" onPostExecute"但是AyncTask对象无法从" onPostExecute"访问这个新的Activity。方法。有线索吗?
谢谢!
答案 0 :(得分:1)
如何从OnPostExecute访问GUI元素
制作一项活动并获取onCreate(bundle)
中的视图,并将AsyncTask
定义为内部类。
public class MainActivity extends Activity
{
TextView textView;
public void onCreate(Bundle bundle){
....
textView = (TextView)findViewById(R.id.textview);
}
在此课程中声明AsyncTask
。
private class UpdateUiAsyncTask extends AsyncTask<Void, Void, Void>{
........
.....
protected void onPostExecute(String result) {
textView.setText(result);
}
}
}