リソース ファイル String.xml 内の文字列配列からスピナーを初期化する方法を理解しています。ただし、私の問題は常に、ドロップダウンメニューから何かを選択したときに適切にリンクする方法です。たとえば、文字列配列がそのように見えるとしましょう
電気 ガス その他
したがって、onItemSelected リスナーで、特定のアクションを実行するためにクリックされたものを知りたい場合は、pos を確認してそれに基づいて行動する必要があります (以下のように文字列配列内の位置がわかっている場合)
public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) {
switch(pos){
case 1: // Electricity
break;
case 2: //Gas
break;
.
.
.
}
}
または、次のようなスティング比較を行う必要があります。
public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) {
if(parent.getSelectedItemAtPos(pos).toString().equal("Electricity"){
} else if (......){
}
.
.
}
最初の利点はクリーンであることですが、問題は、リソース ファイルを変更するときに常にインデックスの更新を追跡する必要があることです。2 番目の方が安全ですが、文字列の比較を行うのは「冗長」なようです。
私はそうではありません。おそらく、最適な解決策が欠けているか、上記で提案したことは単に問題ありませんか?
専門家を助けてください。アプリに多くのスピナーがあるので、最初から正しいことをしたいと思います:(
ありがとう