【问题标题】:Swift 4 how to print text to labelSwift 4 如何将文本打印到标签
【发布时间】:2018-12-18 21:40:36
【问题描述】:

我正在尝试将文本打印到这样的文本字段中: 如何以正确的方式做到这一点?

else {

        weak var worgnlogin: UILabel! {
            worgnlogin.text = ("brugernavn eller password er skrevet forkert")

          }
    }

这里有我的主要 ViewController 代码我已经创建了一个包含所有用户信息的数组,因为我将循环并让正确的用户登录:

import UIKit

类视图控制器:UIViewController {

@IBOutlet weak var txtUserName: UITextField!
@IBOutlet weak var txtPassword: UITextField!
@IBOutlet weak var worgLogin: UILabel!

let user1 = ["user": "Karsten","userID":"1","userName":"Kalle","passWord":"1234" ]
let user2 = ["user": "Rene","userID":"2","userName":"Rene" ,"passWord":"1234" ]
let user3 = ["user": "Johan","userID":"3","userName":"Johan","passWord":"1234" ]




override func viewDidLoad() {
    super.viewDidLoad()
    let array = [user1,user2,user3]
    UserDefaults.standard.set(array, forKey: "users")
    // Do any additional setup after loading the view, typically from a nib.
    if UserDefaults.standard.bool(forKey: "ISUSERLOGGEDIN") == true {
        //user is already logged in just navigate him to home screen
        let homeVc = self.storyboard?.instantiateViewController(withIdentifier: "HomeVC") as! HomeVC
        self.navigationController?.pushViewController(homeVc, animated: false)
    }
}


@IBAction func authenticateUser(_ sender: Any) {
    if txtUserName.text == "userName" && txtPassword.text == "passWord" {
        //navigate to home screen
        UserDefaults.standard.set(true, forKey: "ISUSERLOGGEDIN")
        let homeVc = self.storyboard?.instantiateViewController(withIdentifier: "HomeVC") as! HomeVC
        self.navigationController?.pushViewController(homeVc, animated: true)
    }else {
        displayMyAlertMessage(userMessage: "Brugernavn eller Password er skrevet forkert");

        return;
    }
}

override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
    // Dispose of any resources that can be recreated.
}

func displayMyAlertMessage(userMessage:String)
{

    let myAlert = UIAlertController(title:"Alert", message:userMessage, preferredStyle: UIAlertController.Style.alert);

    let okAction = UIAlertAction(title:"Ok", style:UIAlertAction.Style.default, handler:nil);

    myAlert.addAction(okAction);

    self.present(myAlert, animated:true, completion:nil);

}

} 我希望这能让你更好地理解:)

【问题讨论】:

  • 只有这个在 else worgnlogin.text = "brugernavn eller password er skrevet forkert" `

标签: swift text


【解决方案1】:
worgnlogin.text = "brugernavn eller password er skrevet forkert"

【讨论】:

  • 所以我必须先在我的主要故事板上做一个标签?
  • 请。在 storyboard 上创建一个标签。在 View Controller 类中拖动并创建它的插座。之后将文本分配给您的标签。
  • 现在当我要构建这种情况时:@UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate { var window: UIWindow?线程1:信号SIGABRT
  • “线程 1:信号 SIGABRT”表示缺少某些内容并且无法访问。检查您的插座是否正确连接。
  • 声明行应该在类范围内而不是在 else 内,然后按照viewDidLoad中的答案分配值
【解决方案2】:

首先为标签创建一个 IBOutlet:

@IBOutlet weak var worgnLoginLabel: UILabel!

然后在你的 else 语句中写:

self.worgnLoginLabel.text = “your message”

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-04-13
  • 2021-08-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多