Asynctask onPostExecute中的Onclick监听器

时间:2014-08-01 17:25:29

标签: android android-asynctask onclicklistener

我必须将一项活动称为另一项活动。第一个活动使用Asynctask调用Web服务,响应保存在JSONObject中。

只有在执行webservice后发出单击时才应调用第二个活动。

是否可以在Asynctask的onPostExecute中使用OnCLickListener?我是Android新手,非常感谢您的帮助!

2 个答案:

答案 0 :(得分:0)

我想我明白了,所以你可以隐藏你的按钮,当Asynctask结束时,让它可见。这是可能的代码:

@Override
protected void onCreate(Bundle savedInstanceState){
   super.onCreate(savedInstanceState);
   setContentView(R.layout.activity_information_places);
   View button = (View)findViewById(R.id.idbutton);
   butoon.setOnClickListener(this);
}
.
.
.
yourAsyncTask{
   @Override
   protected Boolean doInBackground(Void... params){
      yourbutton.setVisibility(View.INVISIBLE);
   }
   .
   .
   .
   @Override
   public void onPostExecute(Boolean result){
      yourbutton.setVisibility(View.VISIBLE);
   }
}

答案 1 :(得分:0)

根据异步任务的android设计模式

  • 所有UI线程必须在onPostExecute上完成, onPreEsecuteonProgressUpdate

  • 由于onPostExecute在UI线程上运行,我猜你可以执行 buttononClick那里


有关详细信息检查 - ANDROID DEVELOPER SITE