首页 > 解决方案 > self.navigationItem.rightBarButtonItem?.customView = nil crash

问题描述

当我使用该方法时self.navigationItem.rightBarButtonItem?.customView = nil。然后崩溃了,日志是-[__NSArrayM replaceObjectAtIndex:withObject:]: object cannot be nil。这个问题只发生在小设备上。

标签: ios

解决方案


似乎崩溃发生在 iOS 10 及以下 iOS 10 设备上。原因是您可能会在创建UIBarButtonItem如下所示时使用 customView。

//Example
self.navigationItem.rightBarButtonItem = UIBarButtonItem(customView: UIView(frame: CGRect(x: 0.0, y: 0.0, width: 40.0, height: 40.0)))

所以尝试将 nil 设置为rightBarButtonItem而不是rightBarButtonItem?.customView = nil.

//Example
self.navigationItem.rightBarButtonItem = nil

推荐阅读