I make a spinner dropdown menu for some NavigationDrawer menu items. Why can't I get a spinner variable, do both methods return null?
NavigationView nav_draw = (NavigationView) findViewById(R.id.nav_view); Menu menu = nav_draw.getMenu(); MenuItem item = menu.findItem(R.id.nav_myflat); 1) Spinner spinner = (Spinner) item.getActionView(); 2) View myView = getLayoutInflater().inflate(R.layout.activity_main, null); View v = myView.findViewById(R.id.spinner); Spinner spinner = (Spinner) v; Here is my activity_main:
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" xmlns:app="http://schemas.android.com/apk/res-auto" tools:context=".MainActivity"> <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="?attr/colorPrimary" android:elevation="4dp" android:minHeight="?attr/actionBarSize" android:paddingTop="@dimen/tool_bar_top_padding" android:transitionName="actionBar" /> <android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/drawer_layout" android:layout_width="match_parent" android:layout_height="match_parent" tools:openDrawer="start"> <FrameLayout android:id="@+id/fragment_container" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" /> <android.support.design.widget.NavigationView android:id="@+id/nav_view" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_gravity="start" app:itemIconTint="@color/colorAccent" app:itemTextColor="@color/colorPrimaryDark" app:menu="@menu/main_menu" /> </android.support.v4.widget.DrawerLayout> </RelativeLayout> main_menu.xml:
<?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android"> <group android:id="@+id/group1" android:checkableBehavior="single"> <item android:id="@+id/nav_uprav" android:title="@string/drawer_item_uprav" > <menu> <item android:id="@+id/nav_news" android:title="@string/drawer_item_news" /> <item android:id="@+id/nav_obiav" android:title="@string/drawer_item_obiav" /> <item android:id="@+id/submenu3" android:title="SubMenu 3" /> </menu> </item> <item android:id="@+id/nav_myflat" android:title="@string/drawer_item_myflat" > app:actionLayout="@layout/spinner"/> <menu> <item android:id="@+id/nav_auth" android:title="@string/drawer_item_auth" /> <item android:id="@+id/nav_video" android:title="@string/drawer_item_video" /> <item android:id="@+id/submenu5" android:title="SubMenu 6" /> </menu> </item> </group> </menu> spinner.xml:
<?xml version="1.0" encoding="utf-8"?> <Spinner xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/spinner" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_gravity="center_vertical" android:gravity="center_vertical" />