簡體   English   中英

self.navigationItem.rightBarButtonItem?.customView = nil 崩潰

[英]self.navigationItem.rightBarButtonItem?.customView = nil crash

當我使用self.navigationItem.rightBarButtonItem?.customView = nil 然后崩潰了,日志是-[__NSArrayM replaceObjectAtIndex:withObject:]: object cannot be nil 這個問題只發生在很少的設備上。

似乎崩潰即將發生在 iOS 10 及更低版本的 iOS 10 設備上。 原因是在創建一個你可以使用customView UIBarButtonItem像下面。

//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

如果您嘗試訪問self.navigationItem.rightBarButtonItem?.customView ,它將返回nil或導致應用程序崩潰。

為了在添加后訪問您的customView ,您必須使用Swift標准方式訪問它:

navigationItem.rightBarButtonItems?.first?.customView

檢查以下答案:

https://stackoverflow.com/a/60295524/1399938

如果這對你有用,請幫助投票給其他人。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM