Экземпляр AsyncTask - PullRequest
       0

Экземпляр AsyncTask

0 голосов
/ 21 июня 2011

У меня есть программа, которая использовала асинхронную задачу каждый раз, когда нажимается кнопка ... Я не хочу продолжать вводить ВСЕ AsyncTask каждый раз, когда она нажимается ... Это будет утомительно.Как лучше я могу это сделать?Вот некоторый исходный код.

  new AsyncTask<Void, Integer, Void>(){

            @Override
        protected Void doInBackground(Void... arg0) {
            try {                 
             Thread.sleep(1000);             
            } catch (InterruptedException e) {                         
                e.printStackTrace();             
                    }            
                    return null;
            }
            @Override         
        protected void onPostExecute(Void result) {             
                    text1.setText("Nice to meet you "+name);
                    dismissDialog(typeBar);
                     }


                @Override        
        protected void onPreExecute() { 
            typeBar = 0;
        showDialog(typeBar);

        }

        }.execute((Void)null);

        }
    });
    }

Ответы [ 2 ]

3 голосов
/ 21 июня 2011

Создайте новый класс, расширяющий AsyncTask:

public class MyTask extends AsyncTask<Void, Integer, Void>
{
    @Override
    protected Void doInBackground(Void... arg0)
    {
    }
}

Тогда, где вам это нужно, просто сделайте это:

new MyTask.execute();

Вот и все! Веселись!

0 голосов
/ 21 июня 2011

Поместите это в публичный или частный класс. Затем вы можете ссылаться на него / создавать его экземпляр на основе имени только что созданного класса.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...