ホームページ  >  記事  >  Java  >  Android スピナーの値を値によって事前に選択するにはどうすればよいですか?

Android スピナーの値を値によって事前に選択するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-11-04 12:45:02164ブラウズ

How to Preselect a Value in an Android Spinner by its Value?

スピナーの選択項目を値で設定する: 総合ガイド

Android のスピナー ウィジェットを使用する場合、項目に基づいて事前に選択する必要がある場合があります。リスト内の位置ではなく、その値に基づいて。これを実現するには、次の手順を実行できます。

ステップ 1: ArrayAdapter を使用してスピナーを作成および初期化する

<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: 位置を検索する事前選択された値の

スピナーのアダプター内の事前選択された値の位置は、ArrayAdapter の getPosition() メソッドを使用して取得できます。

<code class="java">int position = adapter.getPosition(preselectedValue);</code>

ステップ 4 : スピナーの選択範囲を設定します

事前に選択された値の位置がわかったら、setSelection() メソッドを使用してスピナーの選択項目を設定します。

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

これらの手順に従うと、基になるアダプター内の位置を検索してスピナー内の値を簡単に事前選択できます。

以上がAndroid スピナーの値を値によって事前に選択するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。