自定义工具栏中的溢出菜单图标
Overflow Menu icon in Custom Toolbar
我正在使用带有菜单图标的自定义工具栏。现在单击此菜单图标我想显示选项菜单。这怎么能做到。
我试着给这个菜单图标添加一个 onclicklistener
@Override
public void onClick(View v) {
if(v.getId() == R.id.toolbarMenuIcon){
openOptionsMenu();
}
}
这没有用。然后我添加了这些行
setSupportActionBar(mBinding.customSelectToolbar.selectionModeToolbar);
在我的活动 oncreate() 中。也覆盖了
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.selection_mode_menu, menu);
return super.onCreateOptionsMenu(menu);
}
有了这个,我可以在单击图标时看到溢出菜单。但问题是,它也将默认菜单图标添加到工具栏,因此我的工具栏现在有两个菜单。我怎样才能让我的自定义工具栏图标打开选项菜单
如果您想自定义默认溢出菜单图标..
使用工具栏的 setOverflowIcon 方法。
喜欢:
toolbar.setOverflowIcon(ContextCompat.getDrawable(this, R.drawable.your_icon));
我使用主题让它工作
<style name="OverFlow" parent="Widget.AppCompat.ActionButton.Overflow">
<item name="android:src">@drawable/ic_menu_overflow</item>
<item name="android:tint">...</item>
<item name="android:width">..dp</item>
<item name="android:height">..dp</item>
</style>
<style name="OnArrival.toolbarTheme" parent="Theme.OnArrival.Light">
<item name="actionOverflowButtonStyle">@style/OverFlow</item>
</style>
我正在使用带有菜单图标的自定义工具栏。现在单击此菜单图标我想显示选项菜单。这怎么能做到。
我试着给这个菜单图标添加一个 onclicklistener
@Override
public void onClick(View v) {
if(v.getId() == R.id.toolbarMenuIcon){
openOptionsMenu();
}
}
这没有用。然后我添加了这些行
setSupportActionBar(mBinding.customSelectToolbar.selectionModeToolbar);
在我的活动 oncreate() 中。也覆盖了
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.selection_mode_menu, menu);
return super.onCreateOptionsMenu(menu);
}
有了这个,我可以在单击图标时看到溢出菜单。但问题是,它也将默认菜单图标添加到工具栏,因此我的工具栏现在有两个菜单。我怎样才能让我的自定义工具栏图标打开选项菜单
如果您想自定义默认溢出菜单图标..
使用工具栏的 setOverflowIcon 方法。
喜欢:
toolbar.setOverflowIcon(ContextCompat.getDrawable(this, R.drawable.your_icon));
我使用主题让它工作
<style name="OverFlow" parent="Widget.AppCompat.ActionButton.Overflow">
<item name="android:src">@drawable/ic_menu_overflow</item>
<item name="android:tint">...</item>
<item name="android:width">..dp</item>
<item name="android:height">..dp</item>
</style>
<style name="OnArrival.toolbarTheme" parent="Theme.OnArrival.Light">
<item name="actionOverflowButtonStyle">@style/OverFlow</item>
</style>