提问者:小点点

将jsonObject转换为string jsonarray并在对话框中显示时出现问题


我需要有关在对话框中显示阵列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();
                }
            });


共1个答案

匿名用户

  String[] arr2 = arr.toString().replace("},{", " ,").split(" ");

由于您有一个数组,最简单的方法是正确传递json数组,创建适配器(例如ArrayAdapter)并在构建器上调用SetAdapter。 在adapter子类中,您可以控制如何在对话框上呈现单个条目