This is My Code
home.xml
<item
android:id="@+id/action_shopping_cart"
android:actionLayout="@layout/action_bar_cart_button"
android:showAsAction="ifRoom"
android:title="Shopping Cart" />
<item
android:id="@+id/action_notifications"
android:actionLayout="@layout/action_bar_notifications_button"
android:showAsAction="ifRoom"
android:title="Notifications" />
<item
android:id="@+id/menu_overflow"
android:orderInCategory="100"
android:icon="@drawable/ic_action_overflow"
android:showAsAction="always"
android:title="OverFlow">
<menu>
<item
android:id="@+id/action_my_account"
android:orderInCategory="100"
android:showAsAction="never"
android:title="My Account" />
<item
android:id="@+id/action_current_orders"
android:orderInCategory="100"
android:showAsAction="never"
android:title="My Orders" />
<item
android:id="@+id/action_wish_list"
android:orderInCategory="100"
android:showAsAction="never"
android:title="My Wishlist" />
<item
android:id="@+id/action_contact_us"
android:orderInCategory="100"
android:showAsAction="never"
android:title="Contact Us" />
<item
android:id="@+id/action_logout"
android:orderInCategory="100"
android:showAsAction="never"
android:title="Logout" />
</menu>
</item>
I want the View "menu_overflow" how can I get that?
I tried Following way :
Activity.java code
public boolean onCreateOptionsMenu(Menu menu) {
final MenuItem item = menu.findItem(R.id.menu_overflow);
View view = (View) findViewById(R.id.menu_overflow);
new MaterialShowcaseView.Builder(this)
.setTarget(mOverFlowIcon)
.setRadius(10)
.setMaskColour(Color.argb(150, 0, 0, 0))
.setContentText("Find Your Wishlist Here") // optional but starting animations immediately in onCreate can make them choppy
.setDismissOnTouch(true)
.show();
return super.onCreateOptionsMenu(menu);
}
But is returning view is null.
Please help...thanx
Try with:
Note this lines:
You can get a reference to the
MenuItem
by overriding theonPrepareOptionsMenu(Menu)
method:If you want a reference to the
ActionView
you can do this with the methodMenuItemCompat.getActionView(MenuItem)
:Did you try this?
Take care of the name of your xml (that is home.xml)
Are you inflating the menu in onCreateOptionsMenu? It appears that when onCreateOptionsMenu is executed, the xml inflation is added to the event queue, rather than inflating immediately. This is what causes your null pointer when you execute findViewById(). Try putting your view lookup inside a Handler. The code within the Handler is added to the message queue and will therefore be executed after the menu is inflated. This will resolve your null pointer. It will look something like this: