我正在创建一个刽子手应用程序。所以我在一个名为我的子类的单词的变量上得到了这个错误:正常。错误:
警告:无法加载任何Objective-C类信息。这将显着降低可用类型信息的质量。
不幸的是,更多人有这个问题似乎无法回答。我已经尝试初始化类中的变量单词,但它不起作用。希望有人可以就如何解决这个问题向我提供一些反馈。这是我的代码:
class ViewController: UIViewController {
// ******** LOCAL VARIABLES *********
var evulMode = true
let someMode = Mode()
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
}
@IBAction func input(sender: UITextField) {
let input = sender.text!
someMode.hangMan(letter: input)
}
// Framework for the hangman game. Calls two modes: normal or evul.
class Mode {
var evulMode = false
var normal = Normal()
var inProgress = false
func hangMan(letter: String) {
if evulMode == true {
print(letter)
} else {
normal.check(letter: letter)
}
}
}
// Evul mode
// Normale mode
class Normal: Mode {
var words: [String] = []
override init() {
words = ["peach", "apple", "banana"]
}
func computeWord() -> String.CharacterView {
let randomIndex = Int(arc4random_uniform(UInt32(words.count)))
let word: String = words[randomIndex]
let arrayWord = word.characters
return(arrayWord)
}
func check(letter: String) {
if (inProgress == false) {
print("inProgess = false")
let word = Array(computeWord())
print(word)
inProgress = true
}
}
//for (index, element) in word.enumerate() {
//print("Item \(index): \(element)")
//}
}
// Houdt de staat van de game bij.
class UserState {
let word = []
}
}
答案 0 :(得分:0)
我只看到一件事是错的。 UserState
类作为无效的属性。 word
应具有显式类型。你不能拥有一个空的集合文字。它总是需要一个明确的类型。
所以,给他一个类型:
class UserState {
let word: [String] = [] //or let word = [String]()
}
即便如此,当课程没有初始化时,我也不明白为什么你需要一个不可变的属性。