android - 上下文操作模式 AppCompatActivity 不显示

标签 android contextual-action-bar appcompatactivity

我的 Activity 扩展了 AppCompatActivity,我希望在其上设置上下文操作栏。 所以这是我的 onCreate 方法

Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
MainActivity.this.startSupportActionMode(new ActionBarCallBack());

我的 ActionBarCallBack 扩展了 android.support.v7.view.ActionMode 并且我这样声明它

@Override
public boolean onCreateActionMode(ActionMode mode, Menu menu) {
    mode.getMenuInflater().inflate(R.menu.contextual_menu, menu);
    return false;
}

我的 list 上设置的主题:

<style name="AppTheme.NoActionBar">
    <item name="windowActionBar">false</item>
    <item name="windowNoTitle">true</item>
    <item name="windowActionModeOverlay">true</item>
</style>

主要 Activity :

<activity
        android:name=".MainActivity"
        android:label="@string/title_activity_main2"
        android:theme="@style/AppTheme.NoActionBar" >
</activity>

我的 onCreateActionMode 触发但 CAB 从未显示。

有什么想法吗?

最佳答案

所以这里是错误

@Override
public boolean onCreateActionMode(ActionMode mode, Menu menu) {
    mode.getMenuInflater().inflate(R.menu.contextual_menu, menu);
    return true; // Now it works
}

将 windowActionModeOverlay 设置为我的 Theme.NoActionBar

<item name="windowActionModeOverlay">true</item>

不必像我在 stackoverflow 线程上看到的那样从我的工具栏设置 startActionMode()。在 android.support.v7.view.ActionMode 上,这条线对我来说工作正常。

Main2Activity.this.startSupportActionMode(new ActionBarCallBack()); //android.support.v7.view.ActionMode

关于android - 上下文操作模式 AppCompatActivity 不显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35037742/

相关文章:

android - 如果我只有 apk 文件,如何在 robotium 中使用 R.id

java - javadoc中@StringRes的用途是什么?

android - 用于显示文本选择句柄的 EditText 的自定义剪切/复制操作栏

android - 选择句柄未出现在 WebView 中 (Android 4.0-4.3)

android - Appcompat Activity 提供版本 24.0.0 的问题

java - 使用当前 Activity 的 Google Drive 集成

javascript - Cordova BarcodeScanner 连续读取

android - 如何从上下文操作栏中删除项目android

android - 如何在多个 fragment 中设置 SupportActionBar()?

android - 在不重新实例化接收 fragment 的情况下在 fragment 之间传递数据