2017-08-27 14 views
-2

SpinnerとListViewを含むアプリケーションを作成したいのですが、Sinnerアイテムをクリックすると新しいListViewが開きます。データベースからのListView。SpinnerアイテムをクリックするとListViewが表示されます

たとえば、私はヨーロッパとアフリカをSpinnerに入れています。ヨーロッパをクリックするとヨーロッパのListViewが表示されます。アフリカをクリックすると、アフリカ諸国のListViewが表示されます。

私はこれをインターネットで検索しましたが、何も見つかりませんでした。

答えて

1

まず、スピナーを設定するには、アダプタが必要です。次に、OnItemSelectedListenerを使用する必要があります。このことができます

<string-array name="countries"> 
    <item>Europe</item> 
    <item>Africa</item> 
</string-array> 

希望:

最後に
europeListView = (ListView) findViewById(R.id.europeListView); 
    africaListView = (ListView) findViewById(R.id.africaListView); 

    ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.countries, android.R.layout.simple_spinner_item); 
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 

    Spinner spinner = (Spinner) findViewById(R.id.spinner); 
    spinner.setAdapter(adapter); 

    spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { 
     @Override 
     public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) { 

      if(adapter.getItem(i) == "Europe"){ 

       europeListView.setVisibility(View.VISIBLE); 
       africaListView.setVisibility(View.INVISIBLE); 

      } else if(adapter.getItem(i) == "Africa"){ 

       africaListView.setVisibility(View.VISIBLE); 
       europeListView.setVisibility(View.INVISIBLE); 

      } 

     } 

     @Override 
     public void onNothingSelected(AdapterView<?> adapterView) { 

     } 
    }); 

、そのようなあなたのstrings.xmlファイルにヨーロッパとアフリカを含む「国」と呼ばれる文字列配列を作る:このコードを使用してください!

関連する問題