-3

応答としてJSONを返すWebサービスを使用しています。応答を解析して、オブジェクトのリストを作成したいと思います。解析したデータをAndroidのUIに表示する方法がわかりません。ここで、ユーザーはリストから1つのアイテムを選択できます(つまり、ドバイモール、ドバイメディアシティ、またはドバイフェスティバル)。

public class MyLocation extends MapActivity {
    public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.location);

    initButtons();

    initMapView();
    initMyLocation();   
                    jObject=getJSONFile("http://loyaltier.com/app/mobile/code/places/Maps.php");
}
    private JSONObject getJSONFile(String URL) {
    JSONObject jObject=null;
    HttpGet httpGet=new HttpGet(URL); //http://loyaltier.com/app/mobile/code/places/Maps.php
    HttpClient httpClient=new DefaultHttpClient();
    HttpResponse httpResponse;
    StringBuilder stringBuilder=new StringBuilder();
    try{
        httpResponse=httpClient.execute(httpGet);
        HttpEntity httpEntity=httpResponse.getEntity();
        InputStream inputStream=httpEntity.getContent();
        int c;
        while((c=inputStream.read())!=-1){
            stringBuilder.append((char)c);
        }
    }catch(Exception e){
        e.printStackTrace();
    }
    try{
        jObject=new JSONObject(stringBuilder.toString());
    }catch(JSONException e){
        Log.e("Log_tags ", "Error parsing data "+e.toString());
    }
    return jObject;
} 
 }  
4

4 に答える 4

1

jObject.getString(name); を使用できます。名前でマップされた値を返します

于 2012-11-18T09:09:43.260 に答える
0

http://www.codeproject.com/Articles/267023/Send-and-receive-json-between-android-and-php 私はこのコードを使用しています。その非常に簡単で簡単です。json 形式を少し変更する必要があります。

于 2012-11-18T08:03:51.843 に答える
0

応答データの解析には JACKSON lib を使用できます。次の投稿には、解析の例があります。

Android の GSON/Jackson

http://w2davids.wordpress.com/android-json-parsing-made-easy-using-jackson/

その後、リスト ビューを使用してブランチ オブジェクトのリストを表示できます。たとえば、これを確認してください。

于 2012-11-18T08:10:17.973 に答える
0

私はGSONで書いていますが、プログラムはgsonFooメソッドでlog.iを表示しません。なんで?何が問題ですか?

Thing.java:

package org.example.loyaltier;

public class Thing {
     String branchId=null;
     String branchCode=null;
     String branchName=null;
     String branchTel=null;
     String address=null;
     String cityName=null;
     String countryName=null;
     String latitude=null;
     String longitude=null;
     String workingHours=null;
}

MainActivity.java:

public class MyLocation extends MapActivity {
    public void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         setContentView(R.layout.location);
         try {
             Log.i("THISSSSSSSSS", "ISSSSSSSSS");
             Log.i("FFOOOORRRR", "YYOUUUUUUUUU");
             gsonFoo();
          } catch (Exception e1) {
         Log.i("catch", "catch");
        // TODO Auto-generated catch block
        e1.printStackTrace();
   }
 }
 public void gsonFoo() throws Exception
 {
     Gson gson = new Gson();
     Thing thing = gson.fromJson(new                     FileReader("http://loyaltier.com/app/mobile/code/places/Maps.php"), Thing.class);
System.out.println(gson.toJson(thing));
    Log.i("GSOOOON", "FOOOO");
   }
 }  
于 2012-11-21T06:02:29.310 に答える