我正在制作一个使用我制作的登录屏幕的应用程序。输入是您在用户名中键入的此文本字段。如何使其响应不同的用户名?例如,用户名是UK。我如何使其响应是否为“英国”?我是Xcode的完整入门者,所以请您逐步指导我进行操作吧?
我尝试使用从视频中看到的if(Username!.text, isEqual: "Hello")
,但弹出错误提示:
'(String ?, isEqual:String)'不能转换为'Bool'。
我不知道这意味着什么以及如何解决它。
import UIKit
class ViewController: UIViewController {
@IBOutlet var ftest: UILabel!
@IBOutlet var Username: UITextField?
@IBOutlet var Password: UITextField!
@IBAction func SignIn(_ sender: Any) {
if(Username!.text, isEqual: "Hello")
}
//this code above is the code I tried to do based on a video and it did not work.
override func viewDidLoad() {
super.viewDidLoad()
}
}
我希望它打印“ Hi”或其他内容。我只希望它对以下内容做出反应:
答案 0 :(得分:0)
您只需按照以下说明使用==
@IBAction func SignIn(_ sender: Any) {
if(Username!.text == "Hello" || Username!.text == "UK") {
print("Hi")
}
}
||
表示“或”
&&
的意思是与
希望获得帮助!
答案 1 :(得分:0)
您可以通过这种方式完成
@IBAction func SignIn(_ sender: Any) {
if Username!.text == "UK"
{
print("Hi")
}
else
{
// do your stuff
}
}
此外,您还可以使用变量来检查文本字段中是否包含字符串,如下所示:
var Str = "UK"
if Str.contains(self.Username!.text!) {
print("Hi")
}
扩展方式:
extension String {
func contains(find: String) -> Bool{
return self.range(of: find) != nil
}
}
var value = self.Username!.text // You can put value as of your textfield.text and then check
print(value.contains("UK")) // true
print(value.contains("THIS")) // false
if value.contains("UK") == true
{
print("Hi")
}
else
{
// do your stuff
}