如何在Spinner中为ActionBarSherlock设置图标而不是选定的元素?

时间:2012-08-13 13:13:22

标签: android actionbarsherlock android-spinner

我想使用SherlockActionBar在操作栏上添加下拉菜单。我在演示中找到了这段代码:

    Context context = getSupportActionBar().getThemedContext();
    ArrayAdapter<CharSequence> list = ArrayAdapter.createFromResource(
            context, R.array.dropdown_items, R.layout.sherlock_spinner_item);
    list.setDropDownViewResource(R.layout.sherlock_spinner_dropdown_item);

    getSupportActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_LIST);
    getSupportActionBar().setListNavigationCallbacks(list, this);

我想要的是微调器菜单项是一个图标而不是下拉列表中的第一个/所选项。我怎样才能做到这一点?我试图在自定义sherlock_spinner_item中为textview设置drawable,并将text设置为空,但它不起作用。谢谢。 enter image description here

2 个答案:

答案 0 :(得分:1)

用于该窗口小部件的适配器类型SpinnerAdapter允许为下拉布局和所选项布局指定自定义布局。

从插图中,您可能希望对所选项目布局使用不同的视图,该视图显示某种代表性图标。最好编写自己的实现SpinnerAdapter的类来实现此功能,而不是依赖于其中一个内置的(如ArrayAdapter)。

答案 1 :(得分:0)

你应该为你的微调器使用自定义适配器

UINavigationBar

getDropDownView用于dropDown项,getView用于spinner标题。