在swift5里如何写一个登陆界面,实现注册数据存入数组用于登陆
时间: 2024-02-23 14:58:21 浏览: 20
好的,以下是一个简单的登陆界面和注册逻辑的示例,使用数组来存储注册的账号和密码:
```swift
import UIKit
class LoginViewController: UIViewController {
@IBOutlet weak var usernameTextField: UITextField!
@IBOutlet weak var passwordTextField: UITextField!
// 定义一个数组来存储账号和密码
var accounts: [[String: String]] = []
override func viewDidLoad() {
super.viewDidLoad()
}
// 添加账号和密码到数组中
func addAccount(username: String, password: String) {
let account = ["username": username, "password": password]
accounts.append(account)
}
// 遍历数组查找账号和密码是否匹配
func checkAccount(username: String, password: String) -> Bool {
for account in accounts {
if account["username"] == username && account["password"] == password {
return true
}
}
return false
}
@IBAction func loginButtonTapped(_ sender: Any) {
guard let username = usernameTextField.text, !username.isEmpty else {
// 用户名为空
return
}
guard let password = passwordTextField.text, !password.isEmpty else {
// 密码为空
return
}
if checkAccount(username: username, password: password) {
// 登录成功
print("登录成功")
} else {
// 登录失败
print("登录失败")
}
}
@IBAction func registerButtonTapped(_ sender: Any) {
guard let username = usernameTextField.text, !username.isEmpty else {
// 用户名为空
return
}
guard let password = passwordTextField.text, !password.isEmpty else {
// 密码为空
return
}
// 添加账号和密码到数组中
addAccount(username: username, password: password)
// 注册成功
print("注册成功")
}
}
```
在这个示例中,我们定义了一个数组 `accounts` 来存储注册的账号和密码,其中每个账号和密码都是一个字典对象。在点击注册按钮时,我们将输入的账号和密码添加到数组中。在点击登录按钮时,我们遍历数组查找账号和密码是否匹配。
注意,这只是一个简单的示例,实际情况中你需要考虑更多的因素,例如账号密码的加密存储、重复账号的处理等等。同时,你也可以使用第三方库来简化网络请求和数据存储的过程,例如 Alamofire 和 SwiftyJSON。