如何在arraylist中设置文本
问题描述:
我已经尝试了很多可能性,但都没有成功。它需要更改第三个值,以便当列表显示时立即更改值如何在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;
答
在for循环的条件下试试这个
DevicesList.add(i,device);
代替
DevicesList.add(device);
哪里是你的布尔数组列表? –