ios - 从 `navigationBar.backBarButtonItem` 中删除 `UIMenu`
问题描述
在 ios14 中,苹果将我们熟悉的 UIMenus 引入了导航栏,因此我们可以在一次长按中返回几个屏幕。
但是,我想从我的应用程序中删除该行为。
我尝试在不将菜单设置为 UIBarButtonItem 的情况下创建一个新类,然后将其添加到导航栏,如下所示。
class BackBarButtonItem: UIBarButtonItem {
@available(iOS 14.0, *)
override var menu: UIMenu? {
set {
/* Don't set the menu here */
/* super.menu = menu */
}
get {
/* return nil doesn't work either */
return super.menu
}
}
}
let backButton = BackBarButtonItem(title: "BACK", style: .plain, target: nil, action: nil)
navigationItem.backBarButtonItem = backButton
没用^^^
navigationItem.backBarButtonItem?.menu = nil // still displays the menu
这似乎也不起作用。
我怎么能删除那个菜单?
解决方案
推荐阅读
- javascript - 如何为注入网页框架的 JavaScript 文件提供布尔标志?
- reactjs - 将 https 链接放入 i18n 翻译文件中进行反应
- javascript - Javascript 正则表达式在 smarty 模板中不起作用
- django - Django-ldap 身份验证问题:用户 DN/密码被 ldap 服务器拒绝
- ip - 在 fpga 上接收 UDP 数据包
- c++ - 调试控制栏在 VS Code 中消失
- r - R - 同一图表中不同列的 ggplot 多条回归线
- javascript - 将对象添加到对象数组 vuetify 模型
- java - 在不使用本机查询选项的情况下选择 JPQL 中的第一行
- javascript - 如何动态显示与选择选项相关的输入字段中的值