4

スピナーが2つあります。国と都市。国の選択時に都市の値を動的に変更したい。国の値を作成および初期化する方法は知っていますが、市の値を設定および変更する方法がわかりません。

任意のガイダンスをいただければ幸いです。

UPDATES1問題は、 CitySpinner のコンテンツを更新する方法がわからないことです。固定スピナーの作成方法に関するリスナーやその他の基本事項を知っています。

4

2 に答える 2

6

2番目のスピナーには、List<String>(または都市の表現が何であれ)上にアダプターを使用します。notifyDataSetChangedリストの内容を変更した後、アダプターを呼び出してください。

于 2011-09-27T00:32:48.967 に答える
3

次のようなスピナーへのプログラム参照を取得する必要があります。

     Spinner spinner = (Spinner) findViewById(R.id.spinner);
     ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(
            this, R.array.planets_array, android.R.layout.simple_spinner_item);
     adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
     spinner.setAdapter(adapter);

次に、都市の値を更新するには、次のようにOnItemSelectedListenerを使用します。

public class MyOnItemSelectedListener implements OnItemSelectedListener {

   public void onItemSelected(AdapterView<?> parent,
      View view, int pos, long id) {
          //update content of your city spinner using the value at index,
          // id, or the view of the selected country. 
      }
   }

   public void onNothingSelected(AdapterView parent) {
   // Do nothing.
   }

}

最後に、リスナーを次のようにカントリースピナーにバインドする必要があります。

    spinner.setOnItemSelectedListener(new MyOnItemSelectedListener());

参考のためにここを参照してください:http://developer.android.com/resources/tutorials/views/hello-spinner.html

于 2011-09-27T00:38:48.530 に答える