当微调器数据来自服务器时,向微调器添加第一个值

时间:2017-12-26 06:14:06

标签: java android arraylist cursor spinner

我想将第一个微调器值设置为"选择您的选择"然后显示来自服务器的数据 一个解决方案 *创建另一个数组列表,并在该列表中包含值"选择您的选择"和 结合这两个并设置为微调器.. 我怎样才能实现这一点请帮助我...(使用光标????)

 Spinner spinner;
  private JSONArray result;
  ArrayList<String> allNames = new ArrayList<String>();
 spinner.setPrompt("...Select the Vehicle Number...");

spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() 

             {
            @Override
            public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {

                String vno = spinner.getSelectedItem().toString();
            }

获取微调器数据的方法

 JSONArray array = jsonObject.getJSONArray("Spinner value");
                for (int i = 0; i < array.length(); i++) {
                    JSONObject job = array.getJSONObject(i);
                    String name = job.getString("spinner_data");
                    allNames.add(name);

                }

                ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>
                        (MainActivity.this, android.R.layout.simple_spinner_item, allNames);


                spinner.setAdapter(dataAdapter);

7 个答案:

答案 0 :(得分:1)

添加字符串 - 选择您的选择 - 作为数组列表中的第一个元素。

 String choice1 =  "-Select Your Choice-";
 allNames.add(choice1);     
 JSONArray array = jsonObject.getJSONArray("Spinner value");
                for (int i = 0; i < array.length(); i++) {
                    JSONObject job = array.getJSONObject(i);
                    String name = job.getString("spinner_data");
                    allNames.add(name);

                }

                ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>
                        (MainActivity.this, android.R.layout.simple_spinner_item, allNames);


                spinner.setAdapter(dataAdapter);

答案 1 :(得分:1)

试试这个

 JSONArray array = jsonObject.getJSONArray("Spinner value");
 allNames.add("Select Your Choice");    
 for (int i = 0; i < array.length(); i++) {
    JSONObject job = array.getJSONObject(i);
    String name = job.getString("spinner_data");
    allNames.add(name);

 }

 ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>
 (MainActivity.this, android.R.layout.simple_spinner_item, allNames);


 spinner.setAdapter(dataAdapter);

答案 2 :(得分:1)

  allNames.clear();
  allNames.add("Select Vehicle");
  JSONArray array = jsonObject.getJSONArray("Spinner value");
  for (int i = 0; i < array.length(); i++)
  {
  JSONObject job = array.getJSONObject(i);
  String name = job.getString("spinner_data");
  allNames.add(name);
  }

答案 3 :(得分:1)

这样做,

allNames.add("select your choice")

JSONArray array = jsonObject.getJSONArray("Spinner value");
for (int i = 0; i < array.length(); i++) {
JSONObject job = array.getJSONObject(i);
String name = job.getString("spinner_data");
allNames.add(name);}

它会自动将第一个索引设置为选项选项。

答案 4 :(得分:1)

您可以创建自己的object,类似于从服务器收到的response,并在解析服务器数据之前将其添加到list

在这里,您的服务器响应只是字符串,您可以将字符串对象添加到列表中。

allNames.clear();
allNames.add("Your First Option");//any string that relevance to your need
//code to parse server response
allNames.add(name);

答案 5 :(得分:1)

试试这个, 在调用获取微调器数据方法之前,只需添加此行

String name="select your choice"
allNames.add(name);

然后初始化获取微调器数据表单服务器

答案 6 :(得分:0)

String choice1 =  "Select Your Choice";
 allNames.add(choice1);  


JSONArray array = jsonObject.getJSONArray("Spinner value");
                for (int i = 0; i < array.length(); i++) {
                    JSONObject job = array.getJSONObject(i);
                    String name = job.getString("spinner_data");
                    allNames.add(name);

                }