在android列表视图中显示JSONArray

时间:2015-12-07 11:16:15

标签: android web-services

尝试在android listview中显示JSONArray但是我无法得到它。

这是源代码

public class Period extends Activity  {
private RadioGroup radioSexGroup;
  private RadioButton radioSexButton;
  private Button btnPeriod,btnback,btnchangestudy;
  TextView tv;
        ProgressDialog prgDialog;
  private String period;
  DBHelper dbUser = new DBHelper(Period.this);
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.period);
    ImageView image = (ImageView) findViewById(R.id.test_image);
    tv = (TextView) findViewById(R.id.display);
      Calendar c = Calendar.getInstance();
      SimpleDateFormat format4;       
     format4 = new SimpleDateFormat("dd/MMM/yyyy HH:mm:ss");    
      tv.setText(format4.format(c.getTime()));
        prgDialog = new ProgressDialog(this);
        prgDialog.setMessage("Please wait...");
        prgDialog.setCancelable(false);        
    addListenerOnButton();
  }
  public void addListenerOnButton() {
    radioSexGroup = (RadioGroup) findViewById(R.id.radioPeriod);
    btnPeriod = (Button) findViewById(R.id.btn_submit_period);
    btnchangestudy=(Button) findViewById(R.id.btn_change_study);        
    btnchangestudy.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {
            if(v==btnchangestudy)
            {
                    invokeWS();
        Intent intent =new Intent(Period.this,Menu.class);
        startActivity(intent);
    }
        }

    });
  }

  public void invokeWS(){   
         prgDialog.show();
         Log.d("sr...", "sri....");
         AsyncHttpClient client = new AsyncHttpClient();
             client.get("http://192.168.10.8:8080/useraccount/barcode/studyid",new AsyncHttpResponseHandler() { 
             String s, s1, s2;
             @Override
             public void onSuccess(String response) {
                 prgDialog.hide();
                 ListView list = (ListView) findViewById(R.id.mobile_list);                  
                 try {
                     List<Data> dataList= new ArrayList();
                     JSONArray JSON = new JSONArray(response);
                     for (int i = 0; i < JSON.length(); i++) {
                         JSONObject obj = JSON.getJSONObject(i);
                         Data d = new Data();
                         d.setId(obj.getString("id"));
                         d.setNum(obj.getString("num"));
                         dataList.add(d);                     
                        }
                        ArrayAdapter<Data> itemsAdapter =new ArrayAdapter<Data>(Period.this,android.R.layout.simple_list_item_1, dataList);
                        ListView listView = (ListView) findViewById(R.id.lvItems);
                        listView.setAdapter(itemsAdapter);
                     } catch (JSONException e) {
                         // TODO Auto-generated catch block
                         e.printStackTrace();
                     }

       }
             @Override
             public void onFailure(int statusCode, Throwable error,
                 String content) {
                 prgDialog.hide();
                 if(statusCode == 404){
                     Toast.makeText(getApplicationContext(), "Requested resource not found", Toast.LENGTH_LONG).show();
                 } 
                 else if(statusCode == 500){
                     Toast.makeText(getApplicationContext(), "Something went wrong at server end", Toast.LENGTH_LONG).show();
                 } 
                 else{
                     Toast.makeText(getApplicationContext(), "Unexpected Error occcured! [Most common Error: Device might not be connected to Internet or remote server is not up and running]", Toast.LENGTH_LONG).show();
                 }
             }
         });
    }

    public void showMessage(String title, String message) {
        Builder builder = new Builder(this);
        builder.setCancelable(true);
        builder.setTitle(title);
        builder.setMessage(message);
        builder.show();
        }



   }

以及我在logcat中获得的以下输出

12-07 16:34:40.723: D/sr...(276): sri....

12-07 16:34:41.003: D/dalvikvm(276): GC_FOR_MALLOC freed 12550 objects / 792856 bytes in 159ms
12-07 16:34:43.943: D/ss(276): 14
12-07 16:34:43.943: D/sw(276): testone
12-07 16:34:43.943: D/ss(276): 13
12-07 16:34:43.943: D/sw(276): kjh
12-07 16:34:43.943: D/ss(276): 12
12-07 16:34:43.943: D/sw(276): 321
12-07 16:34:43.943: D/ss(276): 11
12-07 16:34:43.943: D/sw(276): clinical
12-07 16:34:43.943: D/ss(276): 10
12-07 16:34:43.943: D/sw(276): fsd
12-07 16:34:43.953: D/ss(276): 9
12-07 16:34:43.953: D/sw(276): 2015
12-07 16:34:43.953: D/ss(276): 8
12-07 16:34:43.953: D/sw(276): 133
12-07 16:34:43.953: D/ss(276): 7
12-07 16:34:43.953: D/sw(276): 007
12-07 16:34:43.953: D/ss(276): 6
12-07 16:34:43.953: D/sw(276): TESTSTUDY
12-07 16:34:43.963: D/ss(276): 5
12-07 16:34:43.963: D/sw(276): 111
12-07 16:34:43.973: D/ss(276): 4
12-07 16:34:43.973: D/sw(276): 1000
12-07 16:34:43.973: D/ss(276): 3
12-07 16:34:43.973: D/sw(276): 121
 12-07 16:34:43.983: D/ss(276): 2
12-07 16:34:43.983: D/sw(276): s one
12-07 16:34:43.983: D/ss(276): 1
12-07 16:34:43.983: D/sw(276): Default_Study
请有人帮助我。我是android的新手。

提前致谢

这是period.xml

    <?xml version="1.0" encoding="utf-8"?>
   <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
   android:orientation="horizontal"> 
     <TableLayout
          android:layout_width="match_parent"
          android:layout_height="wrap_content"
          android:gravity="center_vertical|center_horizontal" >  
          <TableRow
              android:id="@+id/tableRow1"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content" 
              android:gravity="center_vertical|center_horizontal">    
               <ImageView 
                android:id="@+id/test_image"
                android:src="@drawable/logo4"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                     />           
          <TextView
    android:id="@+id/display"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:gravity="right"
    android:layout_weight="1"
    android:text= />
     </TableRow>
        <TableRow
              android:id="@+id/tableRow2"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content" >  
              <RadioGroup
    android:id="@+id/radioPeriod"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" >
    <RadioButton
        android:id="@+id/r1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/radio_1" 
         android:checked="true"/>
    <RadioButton
        android:id="@+id/r2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/radio_2" />
    </RadioGroup>
    </TableRow>
     <TableRow
              android:id="@+id/tableRow3"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content" >
              <Button
    android:id="@+id/btn_submit_period"
    android:layout_width="10dp"
    android:layout_height="40dp"
    android:text="@string/submitPeriod" 
    android:onClick="onClick"/> 
     </TableRow>
      <TableRow
              android:id="@+id/tableRow4"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content" > 
              <Button
    android:id="@+id/btn_change_study"
    android:layout_width="10dp"
    android:layout_height="40dp"
    android:text="@string/changestudy" 
    android:onClick="onClick"/> 
    </TableRow>     
    <TableRow
              android:id="@+id/tableRow5"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content" >    
              <Button
        android:id="@+id/btnLogin"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="20dip"
        android:background="#ff6347"
        android:onClick="loginUser"
        android:text="change studyyy"
        android:textColor="#fff" />      
        </TableRow>
        </TableLayout>
         </LinearLayout>

0 个答案:

没有答案