【问题标题】:Extending text selection contextual action bar in Android在 Android 中扩展文本选择上下文操作栏
【发布时间】:2013-07-12 16:28:23
【问题描述】:

我正在尝试通过进一步的操作来扩展文本选择上下文操作栏。

所以我通过 setCustomSelectionActionModeCallback 方法添加了一个 ActionCallback。它工作正常,但是: 我添加了几个图标,因此它们不适合手机的操作栏,它们会进入溢出菜单。问题是:一旦我单击溢出按钮,EditText 似乎失去了焦点,因此 ActionMode 被关闭并销毁。因此,您无法单击溢出菜单中的任何项目。

我正在使用 ActionBarSherlock 4.3.1。

这是一个错误吗?我应该在 b.android.com 上归档吗?有解决方法吗?一种可能的解决方法可能是拆分操作栏。但目前我不需要/想要整个活动的拆分栏,据我所知,以编程方式切换是不可能的。

【问题讨论】:

    标签: android textselection contextual-action-bar


    【解决方案1】:

    这是一个错误吗?

    我想是的。

    我应该在 b.android.com 上归档吗?

    Beat you to it by a year and a half。 :-)

    有解决办法吗?

    到目前为止,我没有找到任何严格的解决方法。我确实制定了一个解决方案:基本上在动作模式下创建你自己的“溢出”项目,当点击时会出现你自己的“嵌套”动作模式,给你更多的空间。我已经有一段时间没有查看我的代码了,我记得它相当讨厌。

    【讨论】:

    • 好的,因为如果用户想要获得我的其他选项,那么选择就不再那么重要了。因此,一个启动我真正的附加选项(在自己的驾驶室中)的自己的操作栏项目将是一个想法。我得试试。谢谢你的提示。无论如何,我也对您的解决方案感兴趣。
    • “如果用户想要获得我的附加选项,那么选择不再那么重要了”——那么你为什么要首先根据文本选择来显示它们呢?难道没有更好的地方来展示这些选项吗?
    • 我想提供一些“插入”选项(如当前日期)。所以它属于文本选择/位置。所以充其量它会与通常的文本选择 CAB 完美集成(因为也许我想用插入替换一些选定的文本)。但是有两个问题:1.上面提到的溢出问题,2.如果没有文本或者无法选择文本(在edittext的末尾),文本选择CAB不会打开。
    • 这就是为什么我在默认 CAB 中添加了一个“插入”按钮,如果按下它,它会使用我的插入选项启动另一个自定义 ActionMode。希望这适用于所有设备/版本...我猜 cmets 不是最好的讨论方式,因为它们不允许换行并且字符数有限...
    • @Maniac:“我想提供一些“插入”选项(如当前日期)”——啊哈哈哈哈。这是合理的。
    猜你喜欢
    • 2012-05-25
    • 2013-02-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-15
    相关资源
    最近更新 更多