我只是在Xcode8中运行了我的项目,它要求我转换为swift3语法,所以我做到了。显然,从2天开始我要修复的那些错误很多。在我将所有内容逐步转换为swift3之后(错误解决)。但是当我构建时,它甚至没有在设备或模拟器中运行过一次。

为什么它没有进一步发展?

它甚至不会抛出任何错误来修复任何错误(一遍又一遍地检查)

我很担心。我需要检查构建设置或代码中的任何内容吗?

请参考下图

ios - Xcode8:为什么Xcode8在转换为Swift3语法后无法构建/编译-LMLPHP

警告:

ios - Xcode8:为什么Xcode8在转换为Swift3语法后无法构建/编译-LMLPHP

最佳答案

Xcode8编译器错误:

有时,编译器未检测到Xcode8中的所有错误

所以我开始在swift文件中逐一评论方法/类

在那里,我发现一种方法正在使编译器麻烦,该方法在我更改了那些语法之后还没有更新为swift3语法,然后它成功运行了

我们需要检查很多事情,如果有人在Xcode8 Swift3中遇到上述问题,请参考以下语法

感谢您的上述评论,这有助于我思考问题

NSFetchRequest之前:

 //let fetchRequest = NSFetchRequest()

Swift3中的NSFetchRequest:
let fetchRequest = NSFetchRequest<Sample>(entityName: "Sample")

注意:**所有委托方法请重新编写

声明带有参数的方法-不变,只是调用此方法
func getPageThumbnail(upc:String, pagenum:Int)-> UIImage
 {

 }

之前:
if let xImage = GF.getPageThumbnail(self.upcLabel.text!, pagenum: 3) as UIImage?

现在在Swift3中:
if let xImage = GF.getPageThumbnail(upc:self.upcLabel.text!, pagenum: 3) as UIImage?

Swift3中的调度队列:
DispatchQueue.global().async {


        DispatchQueue.main.async {

        }

}

Swift3:CGRect制作为CGRect
CGRect(x:0, y:0, width:80, height:80)

CGPoint制作到CGPoint
CGPoint(x:10,  y:20);

Swift3中的选择器:
let myTapGesture = UITapGestureRecognizer(target: self, action: #selector(tapped(_:)) )

func tapped(_ sender: UITapGestureRecognizer) {
}

Swift3中的下标
extension String {


//   right(x) and left(x) function to get substring
func right(i: Int) -> String?
{
    return self[self.length-i ... self.length-1 ]
}


func left(i: Int) -> String?
{
    return self[0 ... i-1]
}



subscript (i: Int) -> Character {
    return self[self.characters.index(self.startIndex, offsetBy: i)]
}

subscript (i: Int) -> String {
    return String(self[i] as Character)
}

//added  swift3 replacement
subscript (r: CountableClosedRange<Int>) -> String {
    get {
        let startIndex =  self.index(self.startIndex, offsetBy: r.lowerBound)
        let endIndex = self.index(startIndex, offsetBy: r.upperBound - r.lowerBound)
        return self[startIndex...endIndex]
    }
}
}

关于ios - Xcode8:为什么Xcode8在转换为Swift3语法后无法构建/编译,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39637007/

10-09 01:20