Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

actionlayout on menuitem does nothing

i am setting an actionLayout on a menu item and setting background color and image, but it's not respected. in my activity, i have:

getMenuInflater().inflate(R.menu.submit_action, menu); 

my submit_action is:

<menu xmlns:android="http://schemas.android.com/apk/res/android"     xmlns:app="http://schemas.android.com/apk/res-auto">     <item android:id="@+id/action_submit"         android:actionLayout="@layout/check"         app:showAsAction="always"  /> </menu> 

my check layout is

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"     style="?android:attr/actionButtonStyle"     android:layout_width="fill_parent"     android:layout_height="fill_parent"     android:background="#e8e8e8"     android:clickable="true"     android:contentDescription="lol" >      <ImageView         android:layout_width="wrap_content"         android:layout_height="wrap_content"         android:contentDescription="@null"         android:scaleType="centerInside"         android:src="@drawable/ic_action_tick" />  </RelativeLayout> 

but even with all of this setup, this is how the action bar appears, not showing my menuitem at all (but it's there, because it responds to the click, but doesn't appear):

enter image description here

like image 356
tipu Avatar asked Apr 22 '14 06:04

tipu


1 Answers

Try app:actionLayout="@layout/check" instead of android:actionLayout="@layout/check".

If you're using ActionbarSherlock or AppCompat, the android: namespace will not work for MenuItems. This is because these libraries use custom attributes that mimic the Android APIs since they did not exist in earlier versions of the framework.

like image 129
Ben Harris Avatar answered Sep 18 '22 08:09

Ben Harris