Ios Swift 2预期声明错误&无法在视图控制器上使用实例成员
以下是代码的屏幕截图: 图像显示的视图更清晰,因此您可以更好地看到它Ios Swift 2预期声明错误&无法在视图控制器上使用实例成员,ios,swift2,Ios,Swift2,以下是代码的屏幕截图: 图像显示的视图更清晰,因此您可以更好地看到它 import UIKit class ViewController: UIViewController { // Inputs @IBOutlet weak var billField: UITextField! //Outputs @IBOutlet weak var tipPercentageLabel: UILabel! @IBOutlet weak var personsLabel: UILa
import UIKit
class ViewController: UIViewController {
// Inputs
@IBOutlet weak var billField: UITextField!
//Outputs
@IBOutlet weak var tipPercentageLabel: UILabel!
@IBOutlet weak var personsLabel: UILabel!
@IBOutlet weak var tipTotalLabel: UILabel!
@IBOutlet weak var tipPerPerson: UILabel!
@IBOutlet weak var GrandTotalLabel: UILabel!
@IBOutlet weak var totalPerPerson: UILabel!
//Slider
@IBOutlet weak var tipSlider: UISlider!
@IBOutlet weak var personsStepper: UIStepper!
// Variables\
var amountDouble = Double(50)
var sliderValue = 18
var tipPerc = 0.18
var tip = Double(10)
var myTip = Double(10)
var persons = Int(1)
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
GrandTotalLabel.text = "Grand Total"
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
@IBAction func tipSliderChanged(sender: UISlider) {
print("tip adjusted")
sliderValue = Int(sender.value)
tipPerc = Double(sliderValue) * 0.01
tipPercentageLabel.text = "\(sliderValue)%"
}
@IBAction func personsStepper(sender: UIStepper) {
print("persons adjusted")
persons = Int(sender.value)
personsLabel.text = "\(persons)"
}
let pctFormatter = NSNumberFormatter()
pctFormatter.numberStyle = NSNumberFormatterStyle.CurrencyStyle
上面一行中以pctFormatter开头的第一个错误是预期的声明错误
第二个错误在上面的行中,错误表示实例成员“amountDouble”不能用于类型“View Controller”
最后一个在上面的一行,写着预期的声明
问题是您的代码行不在方法中。这段代码只是放在类定义中,编译器不知道在func实现之外如何处理它 顺便说一下,如果您的目的是定义一个用代码初始化的属性,您可以执行以下操作:
let pctFormatter: NSNumberFormatter = {
let _formatter = NSNumberFormatter()
_formatter.numberStyle = .CurrencyStyle
return _formatter
}()
但是pctFormatter下面的其他代码行显然是要放在一个方法中的,所以将它们放在func实现中
GrandTotalLabel.text = pctFormatter.stringFromNumber(tip/personsDouble)
myTip = Double(tip/personsDouble)
totalPerPerson.text = pctFormatter.stringFromNumber(result / personsDouble)
}
let pctFormatter: NSNumberFormatter = {
let _formatter = NSNumberFormatter()
_formatter.numberStyle = .CurrencyStyle
return _formatter
}()