Вызывающий метод в XCode

При вызове метода я использую

[self methodname];

Проблема, которую я имею, в xCode Я получаю загрузки предупреждений! Это говорит "*xxxappdelegate.app may not respond to methodname*".

Существует ли лучший способ назвать методы?

5
задан Junuxx 28 October 2012 в 12:20
поделиться

3 ответа

Если вы получили это предупреждение, это означает либо:

  • Этот метод не существует в вашем class
  • Если вы вызываете этот метод в другом классе (не себе), тогда вы не импортировали заголовки для этот класс
5
ответ дан 13 December 2019 в 22:01
поделиться

Добавьте имя метода в @interface для класса, xxxappdelegate в вашем примере. Или просто убедитесь, что реализация methodname находится перед тем местом, где вы ее вызываете в файле.

0
ответ дан 13 December 2019 в 22:01
поделиться

Эти предупреждения просто означают, что компилятор не знает, имеет ли рассматриваемый класс метод, который вы вызываете. Убедитесь, что вызываемый вами метод определен над местом в .m-файле, в котором вы его используете, или объявите метод в верхней части файла.

@implemention A

-(void)blah
{
    [self foo]; // warning!
}

-(void)foo
{
    [self blah]; // no warning
}

@end
4
ответ дан 13 December 2019 в 22:01
поделиться