草庐IT

asyncTasks

全部标签

android - 如何将值传递给 AsyncTask Android

这是我第一次使用AsyncTask,对于传递值可能也有点困惑。我有4ArrayLists,其中包含应插入数据库的数据。我希望这个插入在后台完成。通过从我拥有的4个数组列表中获取传递值,将至少有50行要插入到数据库中,并且一次插入1行。有人可以指导我如何做到这一点吗?现在我创建一个扩展AsyncTask的子类InsertData:::privateclassInsertDataextendsAsyncTask{@OverrideprotectedResultdoInBackground(Params...params){//TODOAuto-generatedmethodstubretu

java - Android:无法解析 AsyncTask 中的方法 'findViewById(int)'

按照教程here我已经设置了一个应该能够从URL下载图像并将其放入ImageView的应用程序。唯一的问题是它找不到findViewById,因为它在Activity类而不是AsyncTask类中。代码在这里:packagecom.example.weather2;importandroid.app.Activity;importandroid.graphics.Bitmap;importandroid.graphics.BitmapFactory;importandroid.os.AsyncTask;importandroid.util.Log;importandroid.widge

android - 如果 Asynctask 不是为了做长时间的后台处理那么我应该使用什么方法

我大部分时间都在使用Asynctask,但在当前应用程序中下载的数据太大,所以我可以使用其他方法进行后台下载,我实际上不确定处理程序是否用于此目的。 最佳答案 butinthecurrentappthedatadownloadedistoobigsowhatothermethodicanusetodobackgrounddownloading,我不同意你的标题,因为doInBackground是一种专门用于长时间任务的方法。所以AsyncTask是非常强大的工具,也是类型安全的。但还有另一种解决方法。另一种简洁高效的方法是将Inte

Android - 在 AsyncTask onPostExecute() 中设置的共享首选项并不总是设置?

我有一些代码在98%的时间都有效,在我自己的测试中100%,所以除了让用户设备遇到此问题外,我无法真正重现该问题。我在onPostExecute()中所做的是设置如下参数:SharedPreferencesprefs=PreferenceManager.getDefaultSharedPreferences(AddProblemActivity.this);prefs.edit().putString("recent_problem_id",result).commit();然后进入下一个Activity:IntentmyIntent=newIntent(AddProblemActiv

java - 如何将 JSONObject 从 doInBackground() 方法返回到 AsyncTask 上的 onPostExecute() 方法?

在Android应用程序中,我想将JSONObject从doInBackground()方法返回到onPostExecute()方法。这是代码:privateclassAddAsyncTaskextendsAsyncTask{JSONObjectjsonObjRecv;Stringresult;@OverrideprotectedJSONObjectdoInBackground(JSONObject...params){AssetObjassetObj=newAssetObj();assetObj.setAssetName(txtname.getText().toString());a

Android - 进度对话框不显示在 AsyncTask 中

我有一个Android应用程序遇到了问题。基本上ProgressDialog根本没有显示。我认为这是某种线程问题,但我不知道如何解决。我正在使用ActionBarSherlock和一些Fragments。我还在使用新的AndroidDrawerLayout,我在抽屉上有我的选项,点击时会替换fragment。第一次加载我的应用程序时,我想检查数据库以查看是否已下载初始数据。如果没有,那么我将开始一个AsyncTask来下载数据。这应该有一个ProgressDialog显示在此期间,但它没有。有人能看出我哪里错了吗?谢谢。MainScreen-应用打开时的默认登陆页面/fragmentp

android - 如何在 Activity 完成时取消 AsyncTask?

在我的Activity中,我使用了多个AsyncTask类。Activity结束时如何取消AsyncTask? 最佳答案 我认为最好的地方是onStopprotectedvoidonStop(){super.onStop();/**Thedevicemayhavebeenrotatedandtheactivityisgoingtobedestroyed*youalwaysshouldbepreparedtocancelyourAsnycTasksbeforetheActivity*whichcreatedthemisgoingtob

java - 如何从 AsyncTask 扩展为通用基类?

AsyncTask有三种不同的实现方式:publicclassDownloadTaskextendsAsyncTaskpublicclassJsonParserTaskextendsAsyncTaskpublicclassPostCommentTaskextendsAsyncTask我希望他们扩展一个BaseAsyncTask,然后我可以将其用于依赖项注入(inject)。AsyncTask的类签名如下所示:publicabstractclassAsyncTask如何在保持不同参数的同时扩展AsyncTask?|DownloadTaskAsyncTask 最

java - 在 AsyncTask 中覆盖执行前/后执行并调用 super.onPre/PostExecute

在AsyncTask中覆盖onPreExecute时是否必须调用super.onPreExecute?AsyncTask.onPreExecute和其他方法实际上做了什么?onPostExecute和onCancelled的相同问题publicclassMyAsyncTaskextendsAsyncTask{@OverrideprotectedvoidonCancelled(Booleanresult){super.onCancelled(result);// 最佳答案 不,你不需要调用super。这是source.如您所见,默认实

外部类中的 Android AsyncTask

我一直在开发一个应用程序,我已经设法让AsyncTask在内部类中正常工作。现在,我正在重构代码,以便AsyncTask位于它自己的一个单独的类中,但我想知道,如何终止ProgressDialog并开始任务成功完成后的新Activity?我试过在onPostExecute(..)方法中启动一个新的Activity,但我知道那行不通。将我的UI线程Activity作为参数传递给AsyncTask的构造函数似乎不起作用://InUIThreadIhadpublicclassTest101extendsActivity{privateButtonbtnLogin;privateLoginTa