使用内部对象的json对象到android应用程序

时间:2014-12-27 16:43:47

标签: android json

这是来自url的我的json代码。这个对象没有一般的对象名称,但{H0...H20}每个包含5个孩子,imgtitleimgtext也包含两个孩子。

{  
"h0":{     
  "  id  ": 1092,  
" imgtitle ":  {"fa":"cc","en":"dd"},  
" imgtext ": {"fa_IR":"zz","en_GB":""},    
" url": "www.example.com"  
     }

"h1":{  
" id ":20221,  
" imgtitle ":{"fa":"","en":"example"},  
" imgtext ":{"fa_IR":"bb","en_GB":""},  
 " url ":"www.example.com" 
      }

      .
      .

"h20" {...
        }
} 

我的问题是 此代码不起作用。如何解决?和 如果它适用于imgtitleimgtext ??

,我该怎么办?
 private class JSONParse extends AsyncTask<String, String, JSONObject> {
       private ProgressDialog pDialog;
      @Override
        protected void onPreExecute() {
            super.onPreExecute();
                  uid = (TextView)findViewById(R.id.uid);
                  myurl = (TextView)findViewById(R.id.url);

            pDialog = new ProgressDialog(MainActivity.this);
            pDialog.setMessage("Getting Data ...");

      }
      @Override
        protected JSONObject doInBackground(String... args) {
        JSONParser jParser = new JSONParser();
        // Getting JSON from URL
        JSONObject json = jParser.getJSONFromUrl(url);
        return json;

      }
       @Override
         protected void onPostExecute(JSONObject json) {
         pDialog.dismiss();
         try {


       JSONObject myobject = new JSONObject("h0");

         int id = myobject.getInt("id");
         String myurl= myobject.getString("url");

            uid.setText(""+id);
            myurl.setText(myurl);

        } catch (JSONException e) {
          e.printStackTrace();
        }
       }
    }

1 个答案:

答案 0 :(得分:0)

你没有调用正确的jsonObject,看看你的代码...... myObject是新的json ..所以当然它会为空。你应该用 json.getJsonObject(h4)。我正在回复使用手机,所以抱歉打字错误和格式化