2017-08-03 187 views
-7

下面是我的swift 2.0代碼。我的代碼在swift 3.1中看起來如何?swift 3遷移錯誤

let index: String.Index = advance(cell.itemPriceLabel.text!.startIndex, 3)   
var trimmedPrice = productPrice.substring(from: index) 
+1

什麼是你的問題? –

+0

什麼是swift中的代碼3.1 –

回答

1

Migration to Swift3

最明顯的變化是,指標不再有後繼(), 前身(),advancedBy(:),advancedBy(:上限:),或distanceTo (_ :) 方法。相反,這些操作被移動到集合中,現在該集合負責遞增和遞減其索引。

myIndex.successor()=> myCollection.index(後:myIndex)
myIndex.predecessor()=> myCollection.index(前:myIndex)
myIndex.advance(按:...)=> MyCollection的。指數(myIndex,offsetBy:...)

比你的代碼將

if let text = priceLabel.text { 
    let index = text.index(text.startIndex, offsetBy: 3) 
} 
1

Swift3版本的代碼如下:

let index = priceLabel.text!.index(priceLabel.text!.startIndex,offsetBy: 3)