![](/img/trans.png)
[英]Xcode: Cannot invoke initializer for type 'String' with an argument list of type '(CGFloat)'
[英]Cannot invoke initializer for type 'CGFloat' with an argument list of type '(CGFloat)'
我不太了解此編譯錯誤,因為我沒有得到此錯誤,並且可以在真實設備上編譯並運行,但是如果我嘗試在模擬器上構建並運行,則會收到此錯誤。
無法使用類型為(CGFloat)的參數列表來調用類型為CGFloat的初始化程序
這是導致錯誤的代碼行:
loadingNotification.yOffset = CGFloat(CGRectGetMinY(self.tableView.bounds))
此外,如果我將其更改為
loadingNotification.yOffset = Float(CGRectGetMinY(self.tableView.bounds))
它適用於模擬器,但不適用於我得到的真實設備
'無法將'Float'類型的值分配給'CGFloat'類型
有什么想法,為什么會這樣?
您可以這樣寫:
#if (arch(i386) || arch(x86_64)) && os(iOS)
loadingNotification.yOffset = Float(CGRectGetMinY(self.tableView.bounds))
#else
loadingNotification.yOffset = CGRectGetMinY(self.tableView.bounds)
#endif
無論如何,請嘗試了解為什么設備中具有CGFloat
以及SIM中具有Float
的原因
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.