Rumah  >  Artikel  >  Java  >  Bagaimana untuk Prapilih Item dalam Spinner Berdasarkan Nilai dalam Android?

Bagaimana untuk Prapilih Item dalam Spinner Berdasarkan Nilai dalam Android?

Linda Hamilton
Linda Hamiltonasal
2024-10-30 21:51:021004semak imbas

How to Preselect an Item in a Spinner Based on Value in Android?

Prapilih Item dalam Spinner Berdasarkan Nilai

Apabila mengemas kini paparan, selalunya perlu untuk prapilih nilai yang disimpan dalam pangkalan data untuk Kawalan pemutar. Pendekatan lalai menggunakan kaedah indexOf Penyesuai adalah terhad.

Sebaliknya, anda boleh mencapai prapilihan ini dengan membandingkan nilai sasaran dengan item Spinner menggunakan ArrayAdapter. Berikut ialah contoh:

<code class="java">public void setSpinner(String value) {
    ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.select_state, android.R.layout.simple_spinner_item);
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

    if (value != null) {
        int spinnerPosition = adapter.getPosition(value);
        getSpinnerField().setSelection(spinnerPosition);
    }
}</code>

Dalam kod ini:

  • Kami mencipta ArrayAdapter menggunakan fail sumber dan gaya yang sesuai.
  • Kami menyemak sama ada nilai sasaran bukan batal.
  • Jika nilainya sah, kami mencari kedudukannya dalam penyesuai menggunakan getPosition.
  • Akhir sekali, kami menetapkan pemilihan Spinner kepada kedudukan yang ditemui.

Pendekatan ini membolehkan anda prapilih item dalam Spinner berdasarkan nilai yang disimpan, bukan mengikut kedudukannya. Ia merupakan penyelesaian yang bersih dan cekap untuk mengemas kini paparan dengan data tertentu.

Atas ialah kandungan terperinci Bagaimana untuk Prapilih Item dalam Spinner Berdasarkan Nilai dalam Android?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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