我的Xcode代码有问题。 我正在获取'Expected identifier或'(',并且通过查看有关该主题的其他帖子,我可能错过了一些愚蠢的东西,这看起来像是我的方括号有问题。 这是我的ViewController.m文件。
#import "ViewController.h"
#import "AppDelegate.h"
#import <UIKit/UIKit.h>
@interface UIViewController ()
@end
@implementation UIViewController
@end
@implementation AppDelegate.h {. //I'm getting "Expected identifier or '('" here
- (IBAction)enterPassword
enterPassword.enabled = NO;
}
{
NSString *passwordString = [NSString stringWithFormat:@"1234"];
if ([passwordField.text isEqualToString:passwordString]) {
UIAlertController* alert = [UIAlertController alertControllerWithTitle:@"Correct password" message:@"This password is correct." preferredStyle:UIAlertControllerStyleAlert];
} else {
UIAlertController* alert = [UIAlertController alertControllerWithTitle:@"Incorrect password" message:@"This password is incorrect." preferredStyle:UIAlertControllerStyleAlert];
enterPassword.delegate = self;
enterPassword.enabled = NO;
}
}
@end
谢谢
编辑: 我正在为我的IBOutlet和IBActions的passwordField和enterPassword获取“使用未声明的标识符”。我该如何解决?我已附上一张图像,以显示错误在哪里,因为其中有一些错误。 Image
第二次编辑: 添加了自己的前缀 enter image description here enter image description here
答案 0 :(得分:-1)
@implementation
和@end
之间的位不需要括号。这些关键字完全定义了类的实现范围。实际上,整个过程中都有很多语法错误。
此外,UIViewController类的重新声明也将导致错误。您根本不需要声明它;导入UIKit会找到它。
距离更近(但我也没有尝试编译它):
@implementation AppDelegate
- (IBAction)enterPassword
{
enterPassword.enabled = NO;
NSString *passwordString = [NSString stringWithFormat:@"1234"];
if ([passwordField.text isEqualToString:passwordString]) {
UIAlertController* alert = [UIAlertController alertControllerWithTitle:@"Correct password" message:@"This password is correct." preferredStyle:UIAlertControllerStyleAlert];
} else {
UIAlertController* alert = [UIAlertController alertControllerWithTitle:@"Incorrect password" message:@"This password is incorrect." preferredStyle:UIAlertControllerStyleAlert];
enterPassword.delegate = self;
enterPassword.enabled = NO;
}
}
@end