Android 使用AppCompat主题将ActionBar选项卡放错了位置

Android 使用AppCompat主题将ActionBar选项卡放错了位置,android,android-appcompat,android-actionbaractivity,Android,Android Appcompat,Android Actionbaractivity,我开始在我的样式中使用Theme.AppCompat,它打破了标签的位置。我正在使用旧的hack在纵向模式下强制ActionBar上的选项卡: try { final ActionBar actionBar = getSupportActionBar(); if (actionBar != null) { final Method setHasEmbeddedTabsMethod = actionBar.getClass() .ge

我开始在我的样式中使用
Theme.AppCompat
,它打破了标签的位置。我正在使用旧的hack在纵向模式下强制
ActionBar
上的选项卡:

try {
    final ActionBar actionBar = getSupportActionBar();
    if (actionBar != null) {
        final Method setHasEmbeddedTabsMethod = actionBar.getClass()
                .getDeclaredMethod("setHasEmbeddedTabs", boolean.class);
        setHasEmbeddedTabsMethod.setAccessible(true);
        setHasEmbeddedTabsMethod.invoke(actionBar, true);
    }
} catch (final Exception e) {
    e.printStackTrace();
}
以下是纵向和横向的屏幕截图:

肖像-放错位置:

横向-正确:


有没有人有过类似的问题?这只是一个样式问题,还是
ActionBar
ActionBarActivity
实现的问题?

我决定不使用ActionBar,而是使用工具栏。ActionBar不推荐的选项卡支持和工具栏不需要任何黑客攻击,所以它是一个明智的解决方案