Xcode Swift中的EXC\u BAD\u指令
我在斯威夫特是新来的。所以我做了这个教程来制作一个提示计算器,效果很好。我启动了一个新项目,看看是否可以重新创建它,同时保留原始代码作为参考。我用完全相同的方法创建了我的应用程序,但使用了不同的变量名 我在lblABVCalculated.text行遇到此错误: 线程1:EXC_BAD_指令(代码=EXC_I386_INVOP,子代码=0x0) 你知道为什么下面的代码不起作用吗 标题Xcode Swift中的EXC\u BAD\u指令,xcode,swift,Xcode,Swift,我在斯威夫特是新来的。所以我做了这个教程来制作一个提示计算器,效果很好。我启动了一个新项目,看看是否可以重新创建它,同时保留原始代码作为参考。我用完全相同的方法创建了我的应用程序,但使用了不同的变量名 我在lblABVCalculated.text行遇到此错误: 线程1:EXC_BAD_指令(代码=EXC_I386_INVOP,子代码=0x0) 你知道为什么下面的代码不起作用吗 标题 我猜:你没有将lblABVCalculated插座与情节提要元素连接起来。。。你不会是第一个:)@MartinR
我猜:你没有将lblABVCalculated插座与情节提要元素连接起来。。。你不会是第一个:)@MartinR我喜欢斯威夫特的这种行为。这比在Objective-C中发生的情况要好得多,当你犯同样的错误时,也就是说,什么都没有。:)哈,是的,我刚找到。真的花了2个小时才弄明白,我不知道为什么它一开始就没有连接!非常感谢。
import UIKit
class FirstViewController: UIViewController {
@IBOutlet weak var txtOG: UITextField!
@IBOutlet weak var txtFG: UITextField!
@IBOutlet weak var lblABVCalculated: UILabel!
var OG = ""
var FG = ""
var answer : Float = 0
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
@IBAction func btnCalculate(sender: UIButton) {
calculateABV()
}
@IBAction func btnClear(sender: UIButton) {
txtOG.text = ""
txtFG.text = ""
lblABVCalculated.text = "ABV"
}
func calculateABV() -> Bool {
OG = txtOG.text
FG = txtFG.text
var fOG = (OG as NSString).floatValue
var fFG = (FG as NSString).floatValue
answer = fOG * (fFG * 0.01)
var answerFormat : NSString = NSString(format: "%0.2f", answer)
lblABVCalculated.text = "ABV: \(answerFormat)"
// Thread 1: EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0)
return true
}
}