У меня есть счетчик с тремя элементами в нем
<string-array name="menuitems">
<item>one</item>
<item>two</item>
<item>three</item>
</string-array>
Тогда я настраивал свой счетчик таким образом
Spinner spinner = (Spinner) findViewById(R.id.spinner1);
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this,
R.array.menuitems, R.layout.spinnerstyle);
adapter.setDropDownViewResource(R.layout.spinnerdropdownstyle);
spinner.setAdapter(adapter);
Экран выглядит так:
Один
Два
Три
Моя проблема заключается в этом spinner. Я не хочу отображать выбранный элемент, который мне нужен.
Два
Три
И, очевидно, если бы два были выбраны, в раскрывающемся списке появлялись только один и три. Я искал это, но не мог понять, как это повлиять. Я попытался изменить массив elementsitems при выборе, но если я удалю элемент из него, он не будет рисовать его в выборе. Я предполагаю, что есть довольно простой способ получить этот эффект.
спасибо за любую помощь.
Напишите пользовательский SpinnerAdapter
который возвращает элементы из меню, исключая выбранный.
Вы можете попробовать установить promt в xml на "One" следующим образом:
<Spinner android:id="@+id/spinnerTest"
android:layout_marginLeft="50px"
android:layout_width="fill_parent"
android:drawSelectorOnTop="true"
android:layout_marginTop="5dip"
android:prompt="@string/SelectOne"
android:layout_marginRight="30px"
android:layout_height="35px"
/>
Затем вы должны переопределить метод onItemClick и установить текст своей переменной в "On nothing selected".