Спиннеры и Android - PullRequest
       2

Спиннеры и Android

0 голосов
/ 15 апреля 2011

Я бы хотел взять значение счетчика и преобразовать его в строку, с которой можно поиграть.

    Spinner s1 = (Spinner)findViewById(R.id.spinner1);
    s1.setOnItemSelectedListener((OnItemSelectedListener) this);
    ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.languages, android.R.layout.simple_spinner_item);
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    s1.setAdapter(adapter);

Я думал, что-то вроде этого будет работать ...

 private OnClickListener sendClickListener = new OnClickListener(){
    public void onClick(View arg0) {
        EditText dstName = (EditText) findViewById(R.id.destinationAddress);
        EditText dstLanguage = (EditText) findViewById(R.id.spinner1);

        String address = dstName.getText().toString();   
        String language = dstLanguage.getText().toString();

        ops.createSocketConnection(language, address);  
        Notification notification = new Notification();
        notification.vibrate = new long[] {100};
    }};

Увы, нет ...

Я просмотрел несколько примеров, но не уверен, имеют ли они прямое отношение к моему вопросу.

Заранее спасибо!

Ответы [ 2 ]

1 голос
/ 15 апреля 2011

Хм, я не совсем уверен, в чем вопрос, но если проблема заключается в получении значения счетчика, проверьте Данные счетчика в строке :

Вы можете использовать getSelectedItem для получить выбранный предмет Если вы связаны с ArrayAdapter , это будет быть значением.

Конечно, в этом случае вы возвращаете CharSequence, поэтому вы должны сделать

String strVal = getSelectedItem().toString();

Надеюсь, это поможет,

Фил Лелло

1 голос
/ 15 апреля 2011

Попробуйте это:

OnItemSelectedListener itemSelectedHandler = new OnItemSelectedListener() {
    @Override
    public void onItemSelected(AdapterView<?> parent, View v, int pos, long row) {
        String str = parent.getItemAtPosition(pos).toString();
        // Do whatever you want with the string
    }
    @Override
    public void onNothingSelected(AdapterView<?> arg0) {
        // Do nothing
    }
};
//set the spinner's listener for select event

mSpinner.setOnItemSelectedListener(itemSelectedHandler);
...