首頁 > Java > java教程 > 如何以程式設計方式按值設定 Android Spinner 中的所選項目?

如何以程式設計方式按值設定 Android Spinner 中的所選項目?

Susan Sarandon
發布: 2024-10-31 17:30:02
原創
890 人瀏覽過

How to Programmatically Set the Selected Item in an Android Spinner by Value?

透過值設定Spinner 的選定項目

更新視圖時,您可能會遇到需要預先選擇資料庫中儲存的值的情況一個旋轉器。最初,您可能會嘗試以下解決方案:

void setSpinner(String value)
{
    int pos = getSpinnerField().getAdapter().indexOf(value);
    getSpinnerField().setSelection(pos);
}
登入後複製

但是,由於 Adapter 介面不提供 indexOf 方法,這種方法會遇到障礙。

要找出並比較微調器中特定值的位置,請依照下列步驟操作:

  1. 定義比較值,例如:StringcompareValue = "some value".
  2. 使用所需資源建立ArrayAdapter:

    ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.select_state, android.R.layout.simple_spinner_item);
    登入後複製
  3. 將ArrayAdapter 設為Spin 🎜>

    mSpinner.setAdapter(adapter);
    登入後複製
  4. 使用getPosition 方法來決定ArrayAdapter 中比較值的位置:

    if (compareValue != null) {
     int spinnerPosition = adapter.getPosition(compareValue);
     mSpinner.setSelection(spinnerPosition);
    }
    登入後複製
    透過執行下列步驟,您可以根據Spinner 的值有效地預先選擇Spinner 中的值,而不是比它在列表中的位置。

以上是如何以程式設計方式按值設定 Android Spinner 中的所選項目?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板