Questions tagged «android-actionmode»

8
在工具栏上显示ActionMode
除了传统的,我正在尝试将android.view.ActionMode搭配新android.support.v7.widget.Toolbar的android.app.ActionBar。我可以显示它: toolbar.startActionMode(callback); 问题是ActionMode会在上方显示ActionBar,而不是在上方显示Toolbar。有办法改变吗? 我尝试在主题中设置以下内容,但似乎没有任何改变: <item name="windowActionModeOverlay">true</item>

2
创建ActionMode时未调用onPrepareActionMode
我刚刚完成了其中一个应用程序的调整,以适应新的v22.1.1支持和appcompat库,有关更多详细信息,请参见此处和此处。当我进行一些测试时,我使用的ActionModes出现了问题。 使用调用启动ActionMode时startSupportActionMode()-不会被调用,而使用现在不建议使用的ActionBarActivity基类或新的AppCompatActivity基类onPrepareActionMode()。 在onPrepareActionMode()最初使用创建ActionMode时,包括v21.0.3和v22.0.0在内的早期版本会自动调用startSupportActionMode()。 我在2.2、4.4.2和5.0的设备上进行了测试,因此它似乎与版本无关。 有人知道,如果这是预期的行为,则是在v22.1.1中引入的,或者是错误? 我发现了这个问题,但是这里没有很多反馈... 编辑2015年5月11日: 如Android问题跟踪器159527中所述,此问题不仅影响appcompat v22.1.x和支持库,还影响Android 5.1的实现。 目前有两种可能的临时解决方案,一种是通用的: @Override public ActionMode startSupportActionMode(final ActionMode.Callback callback) { // Fix for bug https://code.google.com/p/android/issues/detail?id=159527 final ActionMode mode = super.startSupportActionMode(callback); if (mode != null) { mode.invalidate(); } return mode; } 和“快速而肮脏的”(当您实例化ActionMode时): final ActionMode actionMode = startSupportActionMode(new MyActionMode()); if(actionMode != null) { actionMode.invalidate(); …
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.