Итак, я использую swift, и я довольно новичок в этом. В основном, когда я объявляю глобальную переменную, называемую точками в моем классе ViewController, я даю ей значение, и когда я печатаю его в этом классе, он печатает правильное значение. Я чем доступ к переменной в другом классе, и она всегда равна нулю. Я хочу получить доступ к значению переменной. Это мой класс ViewController.Быстрая глобальная переменная остается нулевой в другом классе
class ViewController: UIViewController, UITableViewDataSource, UITableViewDelegate, UITextFieldDelegate, UIScrollViewDelegate {
@IBOutlet weak var points: UITextField!
@IBAction func playButton(_ sender: AnyObject) {
let pts: Int? = Int(points.text!) //This is where I use points to covert it to an int
if(pts == 0) {
checkPoints.text = "Minimum points allowed is 1!"
}else if(pts! > 50) {
checkPoints.text = "Maximum points allowed is 50!"
}else{
checkPoints.text = ""
let farray = arrayOfNames.filter() {$0 != ""}
if(farray.count > 0) {
print("Game starting")
print(arrayOfNames.count)
}else{
print("No players added")
print(farray.count)
}
}
}
Это класс, с которого я пытаюсь получить доступ.
class test1212: UIViewController {
var previousViewController: ViewController!
override func viewDidLoad() {
super.viewDidLoad()
previousViewController = ViewController()
}
@IBAction func test(_ sender: AnyObject) {
//for testing purposes, instead of converting points to an int, I just print it's string value...which doesn't work
print(previousViewController.points.text!)
}
Заранее благодарен!
Это сработало спасибо! – jim