我需要有关在对话框中显示阵列3项的帮助
数组中的项:InvernaderoId,Name和Invernarder
将jsonobject转换为jsonarray时出现问题
JSONObject:
{"data":[{"invernaderoId":"1","name":"inver B","Invernarder":"inv1"},{"invernaderoId":"2","name":"inver C","Invernarder":"inv2"},{"invernaderoId":"3","name":"inv13","Invernarder":"inv3"},{"invernaderoId":"4","name":"inv14 A","Invernarder":"HTFRA14A"}]}
使用JsonArray arr=js.getJsonArray(“data”);
转换为JsonArray
结果示例:
[{"invernaderoId":"1","name":"inver B","Invernarder":"inv1"},{"invernaderoId":"2","name":"sd 12 C","Invernarder":"HTESP12C"},{"invernaderoId":"3","name":"s13","Invernarder":"sd"},{"invernaderoId":"4","name":"ds 14 A","Invernarder":"ds"}]
对替换数组字符串进行编码:
String[] arr2 = arr.toString().replace("},{", " ,").split(" ");
和
final String[] employes= arr2;
“代码”对话框:
new AlertDialog.Builder(getContext())
.setTitle("Selected one")
.setSingleChoiceItems(employes, itemSelected, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int selectedIndex) {
String nombreselect = employes[selectedIndex];
employes.setText(nombreselect);
}
})
.setPositiveButton("Ok", null)
.setNegativeButton("Cancel", null)
.show();
}
});
String[] arr2 = arr.toString().replace("},{", " ,").split(" ");
由于您有一个数组,最简单的方法是正确传递json数组,创建适配器(例如ArrayAdapter
)并在构建器上调用SetAdapter
。 在adapter子类中,您可以控制如何在对话框上呈现单个条目