8
我管理不同的语言,在一个小的单窗格应用程序,使用不同的字符串数组为每个评论,索引整型变量“userLang”,然后设置标签.text = array [index]。基本代码是:Swift:预期的声明错误设置“标签”为一个字符串变量
import UIKit
class ViewController: UIViewController {
var userLang = 0
var arrayOne = ["hi", "hola"]
var arrayTwo = ["Bye", "Adios"]
@IBOutlet weak var msgArrayOne: UILabel!
@IBOutlet weak var msgArrayTwo: UILabel!
msgArrayOne.text = arrayOne[userLang] //Error here: !Expected declaration
msgArrayTwo.text = arrayTwo[userLang] //odd, but this line gets no error until I
//remove the first line above, then
//this line gets the same error.
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.
}
}
我不断收到“预期声明”错误。我已经尝试在引号(而不是数组)中使用简单的字符串作为测试,并且仍然得到相同的错误。我搜查了网页&没有找到任何解决问题的建议。我尝试改变名称,如果标签,以防我使用“保留”引用。
我搜索了Apple的Swift开发者手册&找不到合适的标签语法。这个语法在其他项目中有效,所以我不确定发生了什么。我甚至尝试复制/粘贴相关章节到一个新项目(在线建议之一,在Xcode bug的情况下),没有更好的结果。我注意到小的差异(空间或资本)可以在Swift中产生很大的差异。有什么我在这里做错了吗?有什么建议么?
谢谢!你说的话很直观。设置标签字段是分配,而不是声明,需要成为动作/功能的一部分。暂时,我添加了一个按钮,将其作为一个动作拖入代码中,将所有标签分配放入其中,并且错误消失 - 代码成功编译。最终,我会把它放在一个选择器视图中,但我仍然在学习这个语法(有点复杂)。 – Rob 2014-11-05 22:29:44