如何在操作栏菜单项中添加微调器

时间:2014-09-08 09:30:40

标签: android android-actionbar android-spinner

enter image description here我已经搜索了很多关于这一点但每个人只是将标题更改为微调器。 我想要一些东西,比如我添加菜单项并在其代码中添加它。

    <item 
    android:id="@+id/spListOpt"
    android:showAsAction="always"
    android:actionViewClass="android.widget.Spinner"
    android:title="@string/logout"
          />

在堆栈上看到这个但是在操作栏上没有显示任何内容。 附上图片以便更好地理解。

2 个答案:

答案 0 :(得分:0)

您可以为其设置自定义视图

示例:

MenuItem menuItem = menu.findItem(R.id.spListOpt);
menuItemRefresh = MenuItem.setActionView(menuItem,R.layout.customview); 

<强>参考:

setActionView for MenuItem

example

答案 1 :(得分:0)

您可以通过以下方式将微调框添加到操作栏中:

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    //Inflate your menu layout
    getMenuInflater().inflate(R.menu.main_activity_menu, menu);
    MenuItem menuItem = menu.findItem(R.id.spListOpt);
    Spinner yourSpinnerName = (Spinner) menuItem.getActionView();
    ArrayList<String> spinnerStringArray = new ArrayList<>();
    //Add your data to your array
    spinnerStringArray.add("ItemOne");

    ArrayAdapter<String> spinnerAdapter = new ArrayAdapter<>(this,
            android.R.layout.simple_dropdown_item_1line, mSpinnerStringArray);
    yourSpinnerName.setAdapter(spinnerAdapter);
    return true;
}