Adding spinner to ActionBar (not Navigation

前端 未结 4 1367
灰色年华
灰色年华 2020-12-01 05:41

I have added a spinner to my ActionBar using the second option from the answer here .

How to I add a spinner adapter to the spinner? I tried using a Spinner object

4条回答
  •  孤独总比滥情好
    2020-12-01 06:25

    I know this is an old question, but just in case someone stumbles on it (as I did) and still looks for a complete answer, here is how to do it using the compatibility library, so that it works from to v7 (Android 2.1 Eclair) to current v19 (Android 4.4 KitKat):

    In menu_layout.xml:

    
    
      
    
    

    Using http://schemas.android.com/apk/res-auto namespace aliased as yourapp enables you to use the attributes showAsAction and actionViewClass that do not exist on older versions of Android.

    Then in your Activity code:

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.menu_layout, menu);
        MenuItem item = menu.findItem(R.id.spinner);
        Spinner spinner = (Spinner) MenuItemCompat.getActionView(item);
        spinner.setAdapter(adapter); // set the adapter to provide layout of rows and content
        spinner.setOnItemSelectedListener(onItemSelectedListener); // set the listener, to perform actions based on item selection
    

    Et voilà!

提交回复
热议问题