我创建了一个调用Web服务的AsyncTask实例,获取数据并将其转换为字符串。我想根据从AsyncTask获取的字符串更新一些图片。(字符串包含一些我想下载的图像URL,如果它们不存在于我的应用程序数据文件夹中)我的问题是:UI线程和AsyncTask线程并行执行,我想确保结果字符串(来自AsyncTask)不为空,然后决定是否需要是否下载新图像。如果需要,下载照片并在我的应用中更改布局。如何确保AsyncTask已完成其任务?请告诉我您的建议或编写代码来帮助我。这是我的代码,Activity:protectedvoidonCreate(BundlesavedInstanceStat
我有一个ArrayAdapter,里面有一个AsyncTask,但我不确定如何从onPostExecutenotifyDataSetChanged/例子:publicclassColorAdapterextendsArrayAdapter{ListcolorList;Contextcontext;....publicColorAdapter(Contextcontext,Listlist){this.context=context;this.colorList=list;}publicViewgetView(finalintposition,finalViewview,finalVie
我正在尝试进行多个并发HTTPGET调用,这些调用可能会在不同时间后返回响应。获得数据后,我将使用它为ListView创建自定义适配器。由于存在NullPointerException的高风险,在尝试创建适配器之前,我需要确保所有数据都存在。HTTP调用目前使用AsyncTask完成,这对于在后台执行它们以及稍后调用UI线程来更新View很方便。但它们不是并发的-每个调用都在前一个调用完成后执行。我正在努力解决的问题是,在创建适配器之前确保所有HTTP调用都已返回响应,同时仍保持并发性。有没有办法运行多个并发网络调用,并让onPostExecute方法在所有并发HTTP调用完成后执行它
我想为一些aSyncTasks创建一个基类。我创建了一个抽象类publicabstractclassAsyncTaskBaseextendsAsyncTask{}还有两个继承自它的AsyncTask类aSyncTaskA:publicclassAsyncTaskAextendsAsyncTaskBase{@OverrideprotectedStringdoInBackground(String...params){return"A";}}还有两个继承自它的AsyncTask类aSyncTaskB:publicclassAsyncTaskBextendsAsyncTaskBase{@Ov
早上好StackOverFlow专业人士,我需要一点帮助。我正在运行一个Android应用程序,它通过php脚本调用MySql数据库,当我运行该应用程序时,我收到由空指针异常引起的AsyncTask#1的致命异常错误。它说它是在执行doInBackground时发生的。这是我从MyBringBack关注的教程。我真的需要全神贯注于此,因为几天来我一直在努力解决这个问题。如果我删除/评论大部分Log.d语句,它会运行正常,但我看不到JSON响应中正在发生的事情的标签,下面列出了代码,任何人都可以帮我解决这个问题或告诉我什么代码有问题。这是logcat的错误日志10-2509:27:47.
我需要允许多个AsyncTask同时运行。这是我的AsyncTask:privatevoidcallAPI(Stringuser_id){newAsyncTask(){protectedStringdoInBackground(Void...parameters){Listparams=newArrayList();params.add(newBasicNameValuePair("user_id",user_id));returnapi.post("",params);}//enddoInBackgroundprotectedvoidonPostExecute(Stringresul
我目前有一个asyncTask,它在执行前开始一个加载栏,在后台向服务器发送一些东西,在执行后关闭对话框并启用一个按钮。但是,由于doInBackground返回null,我的后执行没有执行。我想弄清楚我能做些什么来运行postExecute。有任何想法吗?谢谢代码:classDatabaseAsyncextendsAsyncTask{@OverrideprotectedvoidonPreExecute(){dialog=ProgressDialog.show(MainFeedActivity.this,null,"Posting...");}@OverrideprotectedVoi
我的设置如下。我有一个从我的Activity调用的FragmentPagerAdapter,它加载了两个fragment。这是在onCreate中设置的。在onResume中,我调用从数据库加载数据的ASyncTask,然后通过加载数据监听器调用我的ActivityonLoadComplete中的回调。@OverridepublicvoidonLoadComplete(JSONArraydata){//TODOAuto-generatedmethodstubLocalFragmentfragmentB=(LocalFragment)getSupportFragmentManager()
我在从AsyncTaskActivityonPostExecute()方法内部调用setadapter()方法时遇到问题。我读过有关AsyncTask的文档:http://developer.android.com/reference/android/os/AsyncTask.html#onPostExecute(Result)但没有找到如何实现的答案。我应该使用Intent这样做吗?我是Android开发的新手,所以如果这是一个愚蠢的问题,请原谅我。主要ActivitypublicclassMainActivityextendsListActivity{privateString[]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭9年前。我目前正在开发一个Android项目,该项目会在创建时加载大量图片。为确保UI不被阻塞,我可以选择将其置于可运行或AsyncTask中。什么是(性能方面的)更好的选择还是实际上相同?