在针对API级别26

时间:2017-11-29 10:26:18

标签: android position tablet submenu android-8.0-oreo

compileSdkVersion targetSdkVersion 级别更新为 26 后,在API级别为20到25的平板电脑设备上,子菜单显示在中心工具栏(或ActionBar),不在菜单旁边。

为了更好地理解屏幕截图:

Expected result, submenu next to the menu

Actual result, there's a gap between the submenu and the menu

我认为它是支持库26中的一个错误?在针对Api级别24时,此问题不会在任何设备上发生。

有没有人也遇到过这个问题,也许还有一个问题?

测试项目的代码:

菜单XML:

<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:emma="http://schemas.android.com/apk/res-auto" >

<item
    android:id="@+id/menu_send_mail"
    android:icon="@null"
    android:orderInCategory="1"
    android:title="send"
    emma:showAsAction="ifRoom"/>

<item
    android:id="@+id/menu_save_draft"
    android:icon="@null"
    android:orderInCategory="2"
    android:title="save"
    emma:showAsAction="never"/>

onCreateOptionsMenu 方法

@Override
public boolean onCreateOptionsMenu(Menu menu) {

    MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.message_compose, menu);

    SubMenu debugSub = menu.addSubMenu("More actions");
    debugSub.add("Action 1");
    debugSub.add("Action 2");

    return super.onCreateOptionsMenu(menu);
}

0 个答案:

没有答案