Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/110.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c If-Else语句是触发器_Objective C_Ios_If Statement - Fatal编程技术网

Objective c If-Else语句是触发器

Objective c If-Else语句是触发器,objective-c,ios,if-statement,Objective C,Ios,If Statement,我正在iOS SDK中创建应用程序,用户必须输入密码才能访问其内容。我正在使用If-Else语句验证他们的密码。问题是,If-else语句是反向工作的,与它应该做的不一样。例如:如果用户输入了正确的密码,则标签文本会显示:错误的密码。如果用户输入了错误的密码,则标签文本会显示:密码正确。这与我希望它做的恰恰相反。这是我的密码: - (IBAction)isKeywordSecure:(id)sender { NSString *Key = [Keyword text]; if (

我正在iOS SDK中创建应用程序,用户必须输入密码才能访问其内容。我正在使用If-Else语句验证他们的密码。问题是,If-else语句是反向工作的,与它应该做的不一样。例如:如果用户输入了正确的密码,则标签文本会显示:错误的密码。如果用户输入了错误的密码,则标签文本会显示:密码正确。这与我希望它做的恰恰相反。这是我的密码:

- (IBAction)isKeywordSecure:(id)sender {
    NSString *Key = [Keyword text];
    if ([Key compare:@"Password"]) {
        SecurityLevel.text=@"Keyword is Correct";
    } else {
        SecurityLevel.text=@"Keyword is WRONG";
    }
}

我做错了什么?任何帮助都将不胜感激!谢谢

请查看以下内容的文档:;它不返回布尔值,而是返回一个。如果两个字符串相等,则返回的值为零,这相当于
NO
。您应该改用
isEqualToString:

与几乎所有字符串比较例程一样,如果字符串比较相等,则NSString
compare:
方法返回零(准确地说,它返回
SensoredName
,即零)

您可以将if条件替换为

if ([Key compare:@"Password"] == NSOrderedSame) {
    SecurityLevel.text=@"Keyword is Correct";
或者改用
isEqualToString:
方法

所有这些都是你应该熟悉的