6

这是我的代码

#import "MasterViewController.h"
#import "DiseaseResultsViewController.h"

@interface MasterViewController ()
@end

@implementation MasterViewController

@synthesize symptomTextField;

- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
}

- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
    if ([[segue identifier] isEqualToString:@"searchFunctionSegue"])
    {
        if ([self.symptomTextField.text length])
        {
            DiseaseResultsViewController *resultsViewController = [segue destinationViewController];

            resultsViewController.symptomSearchString = self.symptomTextField.text;
        }
    }
}

@end

我在“if ([self.symptomTextField.text length]) 行上收到“Objective-C 方法的预期选择器”错误

以及“DiseaseResultsViewController *resultsViewController = [segue destinationViewController]”行下方的“预期方法主体”和“缺少@end”错误

而且我已经检查了我所有导入的文件的@end 是否正确。

有任何想法吗?

4

5 回答 5

17

在我的情况下,错误是在.h中报告的:

在此处输入图像描述

但问题出在 .m 中:

在此处输入图像描述

有一个错字,我错误地输入了一个+。

于 2015-06-10T13:28:48.297 回答
15

这是我见过的最令人沮丧和愚蠢的错误之一。我只是剪切然后粘贴回代码中,错误消失了:S

于 2013-10-06T15:43:55.863 回答
2

我有同样的错误,我错误地在文件中写了“+”号.m

求代码半小时后,我remove "+"签了字,错误消失了。

于 2014-09-18T12:47:47.247 回答
0

我相信你太沮丧了,就像我一样。就我而言,我已从 .h 文件中删除了“@end”,这导致了错误。再次添加它,错误消失。别紧张。

于 2015-06-11T20:49:04.700 回答
0

在我的情况下,更重要的是,它在方法声明中使用了明显保留的关键字“连接”。更改为 '- (void)initConnect;' 为我解决了。

于 2018-12-10T19:08:47.057 回答