Android的显示器JSON对象列表视图视图、显示器、对象、列表

2023-09-07 01:40:45 作者:£德邦★总管彡

这是在code我工作的:

This is the code I'm working on:

   private final static String SERVICE_URI = "http://restwebservice.com/test/Service.svc";

StringEntity entity;
String var;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    callWebService();

    Button btn = (Button) findViewById (R.id.button1);

    btn.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            Intent i = new Intent(MainActivity.this, Test.class);
            startActivity(i);
        }
    });


}

public void callWebService() {

    try {

           // make web service connection
           HttpPost request = new HttpPost(SERVICE_URI + "/TestApplication");
           request.setHeader("Accept", "application/json");
           request.setHeader("Content-type", "application/json");
           // Build JSON string
           JSONStringer TestApp = new JSONStringer().object().key("id")
                        .value("1").key("name").value("manish").key("email")
                        .value("androidhub4you@gmail.com").key("country")
                        .value("india").endObject();
           entity = new StringEntity(TestApp.toString());
           var = EntityUtils.toString(entity);

           Log.d("****Parameter Input****", "Testing:" + TestApp);
           request.setEntity(entity);
           // Send request to WCF service
           DefaultHttpClient httpClient = new DefaultHttpClient();
           HttpResponse response = httpClient.execute(request);

           Log.d("WebInvoke", "Saving: " + response.getStatusLine().toString());
           // Get the status of web service
           BufferedReader rd = new BufferedReader(new InputStreamReader(
                        response.getEntity().getContent()));
           // print status in log
           String line = "";
           while ((line = rd.readLine()) != null) {
                 Log.d("****Status Line***", "Webservice: " + line);
           }




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

  }

我想显示他们在一个列表视图。你有让我开始与任何教程?我是新来的Web服务。谢谢你。

I want to display them on a listview. Do you have any tutorials to get me started with? I'm new to web services. Thanks.

推荐答案

在列表视图最流行的tutirials其中一个可帮助您:

One of the most popular tutirials on list views which may help you:

- 拉维的博客

解析您的json后按以下步骤进行:

Steps to follow after parsing your json:

 1. Map your json objects to pojo.
 2. Store your pojo in an array list if many are there.
 3. Create a list view with a custom adapter.
 4. update your listview with answer from the pojo's that you have mapped with
    notifyDatasetChanged

您可以使用杰克逊库来解析JSON与一行code。

You can use jackson library to parse json with one line of code.

 //1. Convert Java object to JSON format
 ObjectMapper mapper = new ObjectMapper();
 mapper.writeValue(new File("c:\\user.json"), user);

 //2. Convert JSON to Java object
 ObjectMapper mapper = new ObjectMapper();
 User user = mapper.readValue(new File("c:\\user.json"), User.class);

(按照这个的对象映射教程链接查看更多)

(follow this link for more on object mapping tutorial)

 
精彩推荐
图片推荐