我读了很多关于它并尝试了很多东西,没有成功。但这似乎并不困难,所以我想我错过了一件小事。从异步任务返回到MainActivity
我有2个班,MainActivity
和asynch task
类。
doInBackground
任务工作完美。 但是,当它完成,我想程序继续运行在某一点在我MainActivity
protected Integer doInBackground(Void... params) {
try {
Log.d("control", "ZipHelper.unzip() - File: " + _archive);
ZipFile zipfile = new ZipFile(_archive);
for (Enumeration<? extends ZipEntry> e = zipfile.entries(); e
.hasMoreElements();) {
ZipEntry entry = (ZipEntry) e.nextElement();
unzipEntry(zipfile, entry, _outputDir);
}
} catch (Exception e) {
Log.d("control", "ZipHelper.unzip() - Error extracting file "
+ _archive + ": " + e);
setZipError(true);
}
return null;
}
protected void onPostExecute(Integer... result) {
//Here something like MainActivity.showPicture();
}
我知道我必须做一些事情onPostExecute
,但我不知道究竟是什么。
那么,假设我想在asynch-task
完成后在我的MainActivity
中显示Toast?
所以我正在为'interface'制作一个单独的类? – Bigflow 2013-05-06 14:42:12
ofcourse。 AFAIK它的最佳途径 – 2013-05-06 14:43:34
对于简单地显示一个“吐司”,只是通过“活动上下文”是最好和最简单的方法,恕我直言 – codeMagic 2013-05-06 14:47:33