![初始视图](https://istack.dev59.com/RaM5w.webp)
![点击分享图标后,弹出窗口覆盖了工具栏内容](https://istack.dev59.com/96H9Q.webp)
![在弹出窗口中点击“查看全部”选项,它会在工具栏下方完美地显示](https://istack.dev59.com/BSJRL.webp)
我已经为工具栏添加了shareActionProvider,我的问题是,一旦我点击分享图标,弹出菜单将覆盖工具栏内容,但是当我在弹出菜单中列出的查看全部选项下点击时,弹出菜单将完美地在工具栏下方安置。
我的要求是,一旦我点击分享图标,我的弹出菜单应该在工具栏下方填充,而不是在选择查看全部选项之后。
menu.xml
<item
android:id="@+id/menu_item_share"
app:showAsAction="always"
android:title="Share"
android:icon="@drawable/abc_ic_menu_share_mtrl_alpha"/>
Java 代码
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
MenuItem item = menu.findItem(R.id.menu_item_share);
mShareActionProvider = new ShareActionProvider(getActivity()) {
@Override
public View onCreateActionView() {
return null;
}
};
MenuItemCompat.setActionProvider(item, mShareActionProvider);
if (mShareActionProvider != null) {
mShareActionProvider.setShareIntent(createShareIntent());
}
}
style.xml
<style name="AppTheme.Base" parent="Theme.AppCompat.Light">
<item name="actionOverflowMenuStyle">@style/PopupMenu</item>
</style>
<style name="PopupMenu" parent="Widget.AppCompat.PopupMenu.Overflow">
<item name="android:popupBackground">@color/colorPrimary</item>
<!-- Required for pre-Lollipop. -->
<item name="overlapAnchor">false</item>
<item name="android:dropDownVerticalOffset">-4.0dip</item>
<!-- Required for Lollipop. -->
<item name="android:overlapAnchor">false</item>
<item name="android:dropDownVerticalOffset">-4.0dip</item>
</style>