为啥 UIBarButtonItem 显示为禁用? [复制]

Posted

技术标签:

【中文标题】为啥 UIBarButtonItem 显示为禁用? [复制]【英文标题】:Why does the UIBarButtonItem appear disabled? [duplicate]为什么 UIBarButtonItem 显示为禁用? [复制] 【发布时间】:2018-05-28 11:00:36 【问题描述】:

我创建了一个非常小的演示应用程序来显示一些使用 UINavigationController 的基本导航:

我有两个故事板。这个想法是让点击 (A) 中的 UIBarButtonItem 从第二个故事板呈现视图控制器 (B),然后能够关闭 (B) 以返回 (A)。

不确定我需要多高的技术水平,因为我只是对返回 A 时出现的 UIBarButtonItem 感到困惑(在屏幕截图中显示为 C)。基本上,该按钮似乎已被禁用。

当我更改条形按钮以显示图像时,图像不会改变外观并且基本上可以按预期工作。

有什么想法吗?

【问题讨论】:

看来你对这个问题也有同样的问题***.com/questions/47805224/… 该按钮是否仍然有效,即使它看起来已禁用? 是的,该按钮有效。如果它实际上被禁用,它将不那么令人费解并且易于修复。然而,这只是被禁用的外观,并且仅当按钮使用标题时。 【参考方案1】:
For iPhone X support follow below things:

1. Enable Safearea to your ViewController's XIB or Storyboard's ViewController
2. Top Touchable controls (Button, textfield etc) should be top from SafeArea not from superview
3. Bottom Touchable controls (Button, textfield etc) should be bottom to SafeArea not from Superview.

If you are not following above things not sure touch (Top and Bottom) will work or not. If you follow all will work fine

【讨论】:

抱歉,这不是 iPhone X 特有的问题。在任何设备上都可以看到相同的行为。【参考方案2】:

是的,@the4kman 是对的 - 这是重复的;我按照建议为 ios 11.2 解决了这个问题(除了我在 viewWillAppear 中做了):https://***.com/a/47754627/84682

【讨论】:

以上是关于为啥 UIBarButtonItem 显示为禁用? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

UISearchController 禁用取消 UIBarButtonItem

UIBarButtonItem 如何禁用辅助功能 (iOS)

禁用时设置 UIBarButtonItem 灰色

在 UINavigationBar 中隐藏或禁用 UIBarButtonItem

如何以编程方式禁用/启用UIBarButtonItem

如何使用两个单独的 UIBarButtonItem 禁用/启用 UIPanGestureRecognizer?