我有一个AsyncTask接受上下文(使用onPostExecute)并运行doInBackground从服务器返回对象的ArrayList。当我执行这个时,我可以看到doInBackground运行良好,但它没有将结果传递给onPostExecute.经过大量搜索,我还没有找到如何在AsyncTask中返回对象ArrayList的答案。.这是我在doInBackground中创建的对象并使用onPostExecute:publicclassServerTimeCard{publicStringeventNameInput;BooleanisLocation,isImage,isVoi
我正在运行异步任务以从服务器加载结果。我正在使用SearchView传递查询词。然后使用我自己的API来获取数据。我对为什么AsyncTask输出数据两次感到困惑。mSearchView.setOnQueryTextListener(newSearchView.OnQueryTextListener(){@OverridepublicbooleanonQueryTextSubmit(finalStringquery){linearLayout.removeAllViews();newSearch(query,linearLayout).execute();returnfalse;}@O
美好的一天,我正在尝试通过异步任务显示ListView,但在显示的ListView中取得的成功有限。情况是这样的,我有一个已经显示的Activity,当用户按下按钮时,它开始执行gpsActivity以通过异步任务获取用户位置。现在我想显示一个包含地理编码器结果的ListView,以便用户可以选择他想要的位置,然后它会更新回Activity中的TextView。无法显示此ListView。它根本不显示。相关代码如下:publicvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setCon
我试图了解AsyncTask在Android上的使用,为此我开发了这个简单的代码。令人惊讶的是,doInbackground被正确调用,我看到了日志,但没有调用其他两个方法。我错过了什么吗?publicclassDownloadFilesTaskextendsAsyncTask{protectedVoiddoInBackground(Void...params){try{Log.i("Thread","1");Thread.sleep(1000);Log.i("Thread","2");Thread.sleep(1000);Log.i("Thread","3");Thread.slee
抱歉,这是一篇相当长的文章,让我先尝试解释一下背景:我已经阅读了很多关于这个主题的文章(以及关于这个主题的Alex'sexcellentblogpost),一般的结论似乎不是在异步回调中执行fragment事务(参见Dianne'spost),比如AsyncTask#onPostExecute()。但是我有2种情况需要这样做:Activity显示登录Fragment,当用户按下登录按钮时,AsyncTask开始与服务器进行身份验证,然后当返回登录成功时,登录Fragment将替换为主应用Fragment。显示主应用程序fragment的Activity,当用户触发某些需要登录的操作时,
我的onCreate方法中有这个:String[]myStringArray={"a","b","c","a","b","c","a","b","c","a","b","c","a","b","c","a","b","c"};@OverrideprotectedvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_top_jokes);newloadJson().execute();ArrayAdapteradapter=new
我有一些代码在98%的时间都有效,在我自己的测试中100%,所以除了让用户设备遇到此问题外,我无法真正重现该问题。我在onPostExecute()中所做的是设置如下参数:SharedPreferencesprefs=PreferenceManager.getDefaultSharedPreferences(AddProblemActivity.this);prefs.edit().putString("recent_problem_id",result).commit();然后进入下一个Activity:IntentmyIntent=newIntent(AddProblemActiv
在Android应用程序中,我想将JSONObject从doInBackground()方法返回到onPostExecute()方法。这是代码:privateclassAddAsyncTaskextendsAsyncTask{JSONObjectjsonObjRecv;Stringresult;@OverrideprotectedJSONObjectdoInBackground(JSONObject...params){AssetObjassetObj=newAssetObj();assetObj.setAssetName(txtname.getText().toString());a
我有以下代码:@OverrideprotectedvoidonPostExecute(Voidarg0){...Toast.makeText(getBaseContext(),getBaseContext().getResources().getString(R.string.toast_sync_completed),Toast.LENGTH_SHORT).show();}它失败了(FC)。如果传递"Teststring"而不是getResources().getString(R.string.toast_sync_completed),则它可以正常工作。我做错了什么?
我最近刚刚阅读并测试了AsyncTask,现在我需要知道如何在onPostExecute部分传递多个值。好吧,我使用JSON解析器从Web获取值,但我从JSON获取的值是多个值,我将这些值传递到一个数组中,该数组由获取的每个数据的列标题分隔,这是我应该返回它的部分供onPostExecute使用。但据我所知,每次运行只能使用一次返回(如果我错了请纠正我)。到目前为止,这是我的代码:publicclassGetInfoextendsAsyncTask>{privatefinalStringTAG=null;InputStreamis=null;StringBuildersb=null;L