Как вызвать метод в методе init? - PullRequest
1 голос
/ 02 апреля 2010

Моя программа выглядит так:

-(id)init
{
    if ( (self = [super init]) )
    {
        //TargetWithActions *targetActions= [[TargetWithActions alloc] init];
        [self countDownSpeed123];
    }
    return self;
}
-(void)countDownSpeed123
{
    countDownSpeed = 5.0f;
}
@end

предупреждение: 'TargetWithActions' может не отвечать на '-countDownSpeed123'

Я получаю предупреждение таким образом. Где я не прав в моей программе. Пожалуйста, объясни ? Спасибо.

Если мне нужно использовать значение countDownSpeed ​​в другом классе, как я могу сохранить это значение? Как я могу использовать в другом классе? Я думаю, что сохранение работает для типов указателей.

EDIT:

Извините за плохое кодирование и халатность. Я допустил ошибки в своей программе, которые очень грубые.

Спасибо, что ответили.

  1. Первое: я не объявлял функция ( -(void)countDownSpeed123;) в интерфейс.
  2. Второе: я не включил следуя в моем классе, где мне нужно значение (countDownSpeed).

    TargetWithActions *targetActions= [[TargetWithActions alloc] init];
    [targetActions countDownSpeed123];
    

Теперь я получил то, что мне нужно.

Спасибо.

Ответы [ 2 ]

3 голосов
/ 02 апреля 2010
  1. В классе, где вы пытаетесь использовать TargetWithActions, а в TargetWithActions.m убедитесь, что вы есть #import "TargetWithActions.h".

  2. В TargetWithActions.h убедитесь, в объявлении вашего класса Вы объявили метод -(void)countDownSpeed123;

  3. Извините, я не понимаю, что вы пытаетесь сделать с countDownSpeed123, он ничего не возвращает (void), поэтому я не совсем уверен, что вы хотите retain. Если метод возвращает простое значение, такое как float или int, вам не нужно сохранять его, оно передается по значению - оно будет скопировано.

0 голосов
/ 02 апреля 2010

Извините за плохое кодирование и халатность. Я сделал ошибки в своей программе, которые очень грубые. Спасибо за ответы. Во-первых, я не объявлял функцию (- (void) countDownSpeed123;) в интерфейсе. Второе: я не включил в свой класс следующее, где мне нужно было значение (countDownSpeed). TargetWithActions * targetActions = [[TargetWithActions alloc] init]; [targetActions countDownSpeed123]; Теперь я получил то, что мне нужно. Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...