我只是有一个AsyncTask,使用监听器与主活动进行通信。当响应到达时,第一个Toast将以正确的值显示。问题在于,在try catch中,我无法恢复这些值。因此,if或switch不再起作用。
@Override
public void OnAsyncTaskComplete(String response) {
Toast.makeText(getContext(),((ActivityLogin) getActivity()).choiceButton+" result: "+response, Toast.LENGTH_LONG).show();
try {
JSONObject obj = new JSONObject(response);
String objservice = obj.getString("service");
String objstatuCode = obj.getString("status-code");
String objdescription = obj.getString("status-description");
JSONObject result = obj.getJSONObject("result");
if(!objstatuCode.equals("200") || objstatuCode.equals(null)){
Toast.makeText(getContext(), objstatuCode+"", Toast.LENGTH_SHORT).show();
return;
} else {
Toast.makeText(getContext(), objstatuCode+"", Toast.LENGTH_SHORT).show();
return;
}
} catch (JSONException e){
e.printStackTrace();
}
}