私は別のスピナーのItemClickでスピナーにアイテムをロードしたいという質問があります。実際に私は2つのスピナー、データがjson_parsingから最初のスピナーにロードされ、私は最初のスピナーから項目を選択した後、2番目のスピナーでデータをロードする必要があります、したがって、私はそれがどのように実装されるのか分からない?私には正しい解決策を提案してください。アンドロイドの別のスピナーのアイテムをクリックしてスピナーのアイテムを変更する
ありがとうございます。
私は別のスピナーのItemClickでスピナーにアイテムをロードしたいという質問があります。実際に私は2つのスピナー、データがjson_parsingから最初のスピナーにロードされ、私は最初のスピナーから項目を選択した後、2番目のスピナーでデータをロードする必要があります、したがって、私はそれがどのように実装されるのか分からない?私には正しい解決策を提案してください。アンドロイドの別のスピナーのアイテムをクリックしてスピナーのアイテムを変更する
ありがとうございます。
でそのアダプタを設定します。 First Spinnerのアイテムの選択時にこれを行います。ここで
1.) Clear the previous ArrayList or Array whateven you have passed the
Second Spinner.
2.) Fill the ArrayList or Array of new data & Update the Second Spinnner using
adapter.notifyDataSetChanged();
second_spinner.setSelection(0);
アダプタを2番目のスピナーに準備して設定する、最初のスピナーにOnItemClickListenerを設定します。
最初に最初のスピナーのOnItemClickListnerを設定します。 OnItemClickListnerメソッドでは、まずXMLを解析します。 XMLの構文解析を完了した後、アダプタに解析されたデータを設定して、あなたは、このようにあなたのデータは、第1および第2のスピナーにロードされます
初めてそれを行うことができ、あなたの第二スピナ
より完全なコード例です:あなたが最初のSpinner
にリスナーを設定されているかどう
Spinner spinner1 = (Spinner) findViewById(R.id.spinner1);
Cursor c1 = (some code for getting a cursor from an data source, for example, a sqlite database)
SimpleCursorAdapter adapter1 = new SimpleCursorAdapter(this, android.R.layout.simple_spinner_item, c1, new String[]{"column_name"}, new int[]{android.R.id.text1});
spinner1.setAdapter(adapter1);
Spinner spinner2 = (Spinner) findViewById(R.id.spinner2);
Cursor c2 = (some code for getting a cursor from an data source, for example, a sqlite database)
SimpleCursorAdapter adapter2 = new SimpleCursorAdapter(this, android.R.layout.simple_spinner_item, c2, new String[]{"column_name"}, new int[]{android.R.id.text1});
spinner2.setAdapter(adapter2);
spinner1.setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
Cursor c_new = (create a new cursor);
adapter2.changeCursor(c_new);
adapter2.notifyDataSetChanged(); // this is important for notifying the UI
spinner2.setAdapter(adapter2);
}
});
、UIに通知し、新しいものに二Adapter
のCursor
が変更2番目のSpinner
のAdapter
をリセットします。