2017-05-06 64 views
0

我已經嘗試了很多可能性,但都沒有成功。它需要更改第三個值,以便當列表顯示時立即更改值如何在arraylist中設置文本

JSONObject jsonObj = new JSONObject(jsonStr);

  JSONArray devices = jsonObj.getJSONArray("list"); 

      for (int i = 0; i < devices.length(); i++) { 
       JSONObject c = devices.getJSONObject(i); 
       String id = c.getString("id"); 
       String name = c.getString("name"); 
       String known = c.getString("known"); 
       String description = c.getString("description"); 
       String controllerId = c.getString("controllerId"); 


       JSONObject frequencySurvey = c.getJSONObject("frequencySurvey"); 
       if (frequencySurvey.has("5000")) { 
        JSONObject fivezero = frequencySurvey.getJSONObject("5000"); 

        String timestamp = fivezero.getString("timestamp"); 
        String clients = fivezero.getString("clients"); 
        String enabled = fivezero.getString("enabled"); 

        HashMap<String, String> device = new HashMap<>(); 

        device.put("id", id); 
        device.put("name", name); 
        device.put("enabled", enabled); 
        device.put("clients", clients); 

        DevicesList.add(device); 

       } 


ListAdapter adapter = new SimpleAdapter(Devices_5_0.this, DevicesList, 
      R.layout.list_item, new String[]{ "name","clients","enabled"}, 
      new int[]{R.id.name,R.id.clients, enabled}); 

    lv.setAdapter(adapter); 

在第三值我得到的值 「假」 或 「真」,我想設置爲false =不活躍,但真正=活動

的OnCreate

 tv = (TextView) findViewById(R.id.enabled); 
     DevicesList = new ArrayList<>(); 

而且全球宣佈:

private ListView lv; 
private TextView tv; 
ArrayList<HashMap<String, String>> DevicesList; 
+0

哪裏是你的布爾數組列表? –

回答

0

在for循環的條件下試試這個

DevicesList.add(i,device); 

代替

DevicesList.add(device); 
相關問題