How can I make spinner in action bar to have different item as selected (shown in the action bar top) then the one in the drop down list? Example is google mail with spinner in action bar:
Any source code, tutorial or document would be really helpful. I already have bind spinner with adapter in action bar and I have list in dropdown menu, but I can not modify in any way item without affecting item in dropdown list (because they are the same thing).
To have a different view in the action bar spinner than in the spinner list, you can use a BaseAdapter or an ArrayAdapter and override some methods:
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// Return a view which appears in the action bar.
return yourCustomView..;
}
@Override
public View getDropDownView(int position, View convertView, ViewGroup parent) {
// Return a view which appears in the spinner list.
// Ignoring convertView to make things simpler, considering
// we have different types of views. If the list is long, think twice!
return super.getView(position, null, parent);
}
it might be a bit too late, but the tutorial with commented codes can be found on the Android developer website: http://developer.android.com/guide/topics/ui/actionbar.html#Dropdown
the basics is that during the activity OnCreate you have to set it to be a list:
getActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_LIST);
and then create a spinner adapter and a couple of callbacks just like you would do with a normal spinner.
hope it helps
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With