I need to make fully custom overflow menu items (different background colors as minimum as showed on picture).
Is it possible?
I need to make fully custom overflow menu items (different background colors as minimum as showed on picture).
Is it possible?
Last day i have to implement Action Bar Sherlock.And my case was same as yours. I have implement Adapter for my navigation List.Let say:
public class MyNavigationAdapter extends BaseAdapter { Context mContext = null; String[] mTitles; LayoutInflater mLayOutInflater = null; public MyNavigationAdapter(Context context, String[] titles) { this.mContext = context; this.mTitles = titles; mLayOutInflater = (LayoutInflater) context .getSystemService(Context.LAYOUT_INFLATER_SERVICE); } @Override public int getCount() { return mTitles.length; } @Override public Object getItem(int arg0) { return null; } @Override public long getItemId(int arg0) { return 0; } @Override public View getView(int position, View view, ViewGroup parent) { if (view == null) view = mLayOutInflater.inflate(R.layout.my_list_custom_row, parent,false); TextView rowName = (TextView) view.findViewById(R.id.title); rowName.setText(mTitles[position]); rowName.setBackground(your desire drawle);// yo u can also set color etc. //OR if(position%2==0) rowName.setBackgroundColor(Color.RED); else rowName.setBackgroundColor(Color.BLUE); return view; } }
After this,you have to write these line of code in your Activity onCreate methos.
ActionBar actionBar = getActionBar(); actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_LIST); actionBar.setListNavigationCallbacks(mNavigationAdapterObj, mNavigationListner);
for more information .Consult here.
You can set a custom view for each MenuItem.
@Override public boolean onCreateOptionsMenu(Menu menu) { menu.add("test").setActionView(R.layout.custom_action_menu_item); return super.onCreateOptionsMenu(menu); }
http://developer.android.com/reference/android/view/MenuItem.html#setActionView%28int%29
This one https://stackoverflow.com/a/14123377/2069363 works for me!
You can create such behavior using Spinner (or IcsSpinner for ActionBarSherlock) in action layout of a menu item. Though you have to use a little trick - hide the currently selected item.