在Android应用程序中,我想从doInBackground()方法返回JSONObject到onPostExecute()方法.
这是代码:
这是代码:
private class AddAsyncTask extends AsyncTask<String,Void,String> { JSONObject jsonObjRecv; String result; @Override protected JSONObject doInBackground(JSONObject... params) { Assetobj assetobj = new Assetobj(); assetobj.setAssetName(txtname.getText().toString()); assetobj.setMobileNo(txtmobile.getText().toString()); assetobj.setownerId(myApp.getownerId()); assetobj.setStartTime(startTime.getText().toString()); assetobj.setEndTime(endTime.getText().toString()); assetobj.setInterval(interval.getText().toString()); JSONObject jsonObjRecv = SyncService.AddNewAssetRequest(assetobj); return jsonObjRecv; } protected void onPostExecute(JSONObject obj){ if(obj != null) { //do something }
我试过这段代码我得到了错误.是否可以从doInBackground()方法返回JSONObject到onPostExecute()方法?
编辑:
这可以帮到你,
private class AddAsyncTask extends AsyncTask<String,JSONOnject> { JSONObject jsonObjRecv; String result; @Override protected JSONObject doInBackground(String... params) { Assetobj assetobj = new Assetobj(); assetobj.setAssetName(txtname.getText().toString()); assetobj.setMobileNo(txtmobile.getText().toString()); assetobj.setownerId(myApp.getownerId()); assetobj.setStartTime(startTime.getText().toString()); assetobj.setEndTime(endTime.getText().toString()); assetobj.setInterval(interval.getText().toString()); JSONObject jsonObjRecv = SyncService.AddNewAssetRequest(assetobj); } protected void onPostExecute(JSONObject obj){ if(obj != null) { //do something }
这是明确的,
private class AddAsyncTask extends AsyncTask<What type of input you need to pass to doInBackground(),What type of return value you need to return to onPostExcute()>
可能你不需要在方法声明中更改返回值和参数.
只需创建以下行
private class AddAsyncTask extends AsyncTask<String,JSONOnject>
private class AddAsyncTask extends AsyncTask<String,JSONOnject>
原文地址:https://www.jb51.cc/json/288531.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。