2014-09-25 70 views
0

我得到這個錯誤「無法調用‘+’智慧類型的參數列表‘(CGFloat的,CGFloat的)’使用此雨燕代碼時。無法弄清楚如何添加兩個CGFloat?

var added = CGFloat(gestureRecognizer.view?.center.y) + CGFloat(translation.y) 

我在做什麼錯了。我有兩個浮體我想將它們加在一起

回答

3

這條線在這裏:。

gestureRecognizer.view?.center.y 

可以被認爲是作爲一個返回CGFloat?可選的表達式如果viewnil,則返回nil。如果view有值,則鑽入。CGFloat(nil)是編譯錯誤。

var added = CGFloat(gestureRecognizer.view!.center.y) + CGFloat(translation.y) 
//          ^! instead of ? 

你真的想在這裏打開它。因爲如果viewnil你通過nilCGFloat()這不會很酷。但是你必須考慮viewnil時可能發生的情況。

也許這不會發生在你的程序流中,我不知道。但是,如果它是nil會導致運行時崩潰。