Rumah > Java > javaTutorial > teks badan

Bagaimana untuk Menetapkan Pemilihan Spinner mengikut Nilai, Bukan Kedudukan dalam Android?

Mary-Kate Olsen
Lepaskan: 2024-10-31 03:13:02
asal
360 orang telah melayarinya

How to Set a Spinner's Selection by Value, Not Position in Android?

Menetapkan Pemilihan Spinner mengikut Nilai, Bukan Kedudukan

Apabila mengemas kini paparan dan pemilihan Spinner mesti sepadan dengan nilai yang disimpan dalam pangkalan data, pendekatan konvensional adalah untuk mencari kedudukan yang sepadan menggunakan kaedah indexOf pada Adapter. Walau bagaimanapun, pendekatan ini menghadapi sekatan jalan kerana Penyesuai tidak menyediakan kaedah sedemikian.

Untuk mengatasi cabaran ini, pendekatan yang lebih sesuai ialah menggunakan kaedah getPosition ArrayAdapter. Kaedah ini, apabila dipasangkan dengan ArrayAdapter yang sesuai, membolehkan pengecaman kedudukan yang dikaitkan dengan nilai tertentu.

Pertimbangkan senario di mana Spinner bernama mSpinner mengandungi nilai "beberapa nilai". Untuk mencari dan membandingkan kedudukannya, ikuti langkah berikut:

Buat ArrayAdapter daripada fail sumber R.array.select_state:

<code class="java">ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.select_state, android.R.layout.simple_spinner_item);</code>
Salin selepas log masuk

Tetapkan Penyesuai Spinner dan DropDownViewResource:

<code class="java">adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
mSpinner.setAdapter(adapter);</code>
Salin selepas log masuk

Seterusnya, jika nilai yang hendak dibandingkan (compareValue) bukan batal:

<code class="java">if (compareValue != null) {
    int spinnerPosition = adapter.getPosition(compareValue);
    mSpinner.setSelection(spinnerPosition);
}</code>
Salin selepas log masuk

Dengan menggunakan pendekatan ini, pemilihan Spinner boleh ditetapkan dengan tepat berdasarkan nilai yang disimpan dalam pangkalan data, menyediakan pengalaman pengguna yang lancar semasa kemas kini paparan.

Atas ialah kandungan terperinci Bagaimana untuk Menetapkan Pemilihan Spinner mengikut Nilai, Bukan Kedudukan dalam Android?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!