В моем main.xml у меня есть Spinner (вместе с другими компонентами).
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/SelProtocol_main" android:id="@+id/textView1_main"></TextView>
<Spinner android:layout_width="wrap_content" android:layout_weight="1"
android:layout_height="wrap_content" android:id="@+id/cmb_protocol_main"
android:drawSelectorOnTop="true"></Spinner>
В res / values у меня protocol_array.xml со строковым массивом name = "protocol".
В моей Деятельности, в методе, вызванном из onCreate, у меня есть,
prtlSpinner = (Spinner)findViewById(R.id.cmb_protocol_main);
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.protocols, R.layout.main); // HERE I GET ERROR
adapter.setDropDownViewResource(R.layout.main);
prtlSpinner.setAdapter(adapter);
/*
prtlSpinner.setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> arg0, View arg1,
int arg2, long arg3) {
selectedProtocolIndex = prtlSpinner.getSelectedItemPosition();
selectedProtocol = prtlSpinner.getSelectedItem().toString();
Log.i(TAG, "prtlSpinner tem Selected = " + selectedProtocol + " Index = " + selectedProtocolIndex);
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
selectedProtocolIndex = -1;
selectedProtocol = "";
}
});
*/
Исключение, которое я получаю: нужен TextView. Я пробовал разные способы, но ничего не получалось. С помощью приведенного выше кода, я получаю NullPointerException.Spinner код кодируется с использованием http://www.brighthub.com/mobile/google-android/articles/46782.aspx. Я не мог понять из документов также.
Может кто-нибудь помочь мне, где я иду не так? И зачем нам TextView для заполнения выпадающего списка? Код слушателя правильный или нет - мне просто нужно установить переменную на выбор с индексом и текстом выбранного элемента! Я не мог получить с Spinner. Любая помощь, руководство высоко ценится.
Спасибо