-1

5 つのテキスト文字列を持つスピナーがあります。スピナーから文字列を取得したいのですが、最初の文字列しか取得できません (2 番目、3 番目の文字列を取得できません.....)。

私はこの構文(以下)を使用しますが、それでも失敗しました:

  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

onItemSelectedLIstener() メソッドを使用すると、各スピナー値を文字列に取得できます。

Main.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

以下のコードを参照してください。

    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 に答える
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 に答える