-1

我有一个有 5 个文本字符串的微调器。我想从微调器中得到一个字符串,但我只得到第一个字符串(我无法得到第二个,第三个......)。

我使用这种语法(如下)但仍然失败:

  Spinner spinner = (Spinner) findViewById(R.id.spinnerItem);
  ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(
          this, R.array.SpinnerArray, android.R.layout.simple_spinner_item);
  adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
  spinner.setAdapter(adapter);

  String SpinnerText = myspinner.getSelectedItem().toString();
4

6 回答 6

3

通过使用 onItemSelectedLIsener() 方法,您可以将每个微调器值转换为字符串。

主.java

  spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
    @Override
      public void onItemSelected(AdapterView<?> arg0, View arg1,
      int arg2, long arg3) {
      // TODO Auto-generated method stub
          String selection=spinner.getSelectedItem().toString();
       Toast.makeText(getApplicationContext(), "Selected" + selection, 30).show();
         }
于 2012-05-24T05:31:04.727 回答
1

要首先从微调器中获取所选项目,您需要使用微调器设置监听器

spinner.setOnItemSelectedListener(this);

你需要实现接口 OnItemSelectedListener 并最终覆盖方法

public void onItemSelected(AdapterView<?> parent, View v, int position, long id) {
selection.setText(items[position]);
}
public void onNothingSelected(AdapterView<?> parent) {
selection.setText("");
}
于 2012-05-24T05:31:59.080 回答
0

在微调器的 onclick 侦听器中尝试此代码使用此代码获取所选项目的字符串

 String s = spinneradapter.getItemAtPosition(Integer.parseInt(position));

希望这有帮助

于 2012-05-24T05:23:30.487 回答
0

用这个 :

String mySpinner = spinner.getItemAtPosition(spinner.getSelectedItemPosition()).toString(); 
于 2012-05-24T05:24:40.193 回答
0
spinner.getItemAtPosition(0).toString()//First string
spinner.getItemAtPosition(1).toString()//second string
spinner.getItemAtPosition(2).toString()//third string
于 2012-05-24T05:24:44.330 回答
0

请参阅下面的代码,它可能会对您有所帮助。

    spin_search.setOnItemSelectedListener(new OnItemSelectedListener() {

                public void onItemSelected(AdapterView<?> arg0, View arg1, int id,
                        long arg3) {
                Toast.makeText(Sms_logs.this, "you select : " + adapter.getItem(id), 2000).show();
    }

    public void onNothingSelected(AdapterView<?> arg0) {
                    // TODO Auto-generated method stub

                }
            });
于 2012-05-24T05:25:39.103 回答