我试图从this answer实施解决方案,但我一直无法让它发挥作用。对于我想要访问的变量,我得到“使用未解析的标识符...”。
我有一个loginViewController.swift,当有人登录时会获取用户名和密码。
import UIKit
class loginViewController:UIViewController {
@IBOutlet weak var userEmailTextField: UITextField!
@IBOutlet weak var userPasswordTextField: UITextField!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
@IBAction func loginButtonTapped(sender: AnyObject) {
let userEmail = userEmailTextField.text;
let userPassword = userPasswordTextField.text;
然后我有一个PostService.swift文件从MySQL数据库中获取数据..它应该使用登录人员的用户名来访问相关数据..
import Foundation
类PostService {
var settings:Settings!
let userEmail = "steve@centrix.co.za"; //This is hard coded but needs to come from the loginViewController
let userPassword = "1234"; //This is hard coded but needs to come from the loginViewController
我已尝试过这个以及其他一些建议而我似乎无法让它发挥作用..请帮助..
提前致谢。
答案 0 :(得分:1)
你可以宣布
var userEmail = "";
var userPassword = "";
在之外的一个类(与哪个Swift类无关)。然后,放弃let
,
@IBAction func loginButtonTapped(sender: AnyObject) {
userEmail = userEmailTextField.text;
userPassword = userPasswordTextField.text;
将存储变量,您只能使用PostService
类中的。
但是,LoginViewController和PostService之间真的没有连接吗?你必须在某个地方调用PostService函数 ...也许你可以在那里传递变量?