按值設定Spinner 選取項目:綜合指南
使用Android 的Spinner 小工具時,可能需要根據數值預先選擇一個項目取決於其值而不是其在列表中的位置。為此,可以採取以下步驟:
第1 步:使用ArrayAdapter 建立並初始化Spinner
<code class="java">Spinner mSpinner = (Spinner) findViewById(R.id.my_spinner); ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.my_array, android.R.layout.simple_spinner_item); adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); mSpinner.setAdapter(adapter);</code>
第2 步:擷取要預選的值
假設所需的值儲存在名為preselectedValue 的變數中,請以下列方式擷取它:
<code class="java">String preselectedValue = /* Fetch the stored value here */;</code>
第3 步:搜尋位置預選值的
預選值在Spinner適配器中的位置可以使用ArrayAdapter的getPosition()方法取得:
<code class="java">int position = adapter.getPosition(preselectedValue);</code>
第4步:設定Spinner 的選擇
知道預選值的位置後,使用setSelection() 方法設定Spinner 的選定項目:
<code class="java">mSpinner.setSelection(position);</code>
這裡是完整的程式碼片段來說明整個過程:
<code class="java">String preselectedValue = /* Fetch the stored value here */; Spinner mSpinner = (Spinner) findViewById(R.id.my_spinner); ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.my_array, android.R.layout.simple_spinner_item); adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); mSpinner.setAdapter(adapter); if (preselectedValue != null) { int position = adapter.getPosition(preselectedValue); mSpinner.setSelection(position); }</code>
透過執行以下步驟,您可以透過在底層適配器中搜尋值的位置來輕鬆地在Spinner 中預先選擇值。
以上是如何透過值在 Android Spinner 中預選值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!