上下文操作模式 AppCompatActivity 不显示
Contextual Action Mode AppCompatActivity not show
我 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;
}
我的清单上设置的主题:
<style name="AppTheme.NoActionBar">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
<item name="windowActionModeOverlay">true</item>
</style>
主要活动:
<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>
不必像我在 Whosebug 线程上看到的那样从我的工具栏设置 startActionMode()。在 android.support.v7.view.ActionMode 上,这条线对我来说很好用。
Main2Activity.this.startSupportActionMode(new ActionBarCallBack()); //android.support.v7.view.ActionMode
您 return false 来自 onCreateActionMode 在您的 ActionMode.Callback.
中实现的方法
尝试将 return 值更改为 true
@Override
public boolean onCreateActionMode(ActionMode mode, Menu menu) {
// Inflate menu
return true; // <===== MUST RETURN TRUE
}
我 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;
}
我的清单上设置的主题:
<style name="AppTheme.NoActionBar">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
<item name="windowActionModeOverlay">true</item>
</style>
主要活动:
<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>
不必像我在 Whosebug 线程上看到的那样从我的工具栏设置 startActionMode()。在 android.support.v7.view.ActionMode 上,这条线对我来说很好用。
Main2Activity.this.startSupportActionMode(new ActionBarCallBack()); //android.support.v7.view.ActionMode
您 return false 来自 onCreateActionMode 在您的 ActionMode.Callback.
中实现的方法尝试将 return 值更改为 true
@Override
public boolean onCreateActionMode(ActionMode mode, Menu menu) {
// Inflate menu
return true; // <===== MUST RETURN TRUE
}