2013-05-15 4 views
1

Я новичок в этом и не уверен, что мне нужно определить поворот, если я просто делаю ошибку или просто делаю неправильную вещь вообще.Тип получателя, например, сообщение не объявляет метод с селектором

Вот что я до сих пор:

- (IBAction)TestDrive:(id)sender {      
    CGPoint center = CGPointMake(car.center.x, 
    self.view.frame.origin.y + car.frame.size.height/2); 
    [UIView animateWithDuration:3 animations:^{ 
     car.center = center; 
    } 
    completion:^(BOOL finished){ 
    [self rotate]; //error here 
    }]; 
} 

- (void)rotate;{ 
    } 

- (void)returnCar; { 
    } 

- (void)continueRotation;{ 
    } 

@end 
+0

Вы должны опубликовать сообщение точную и полную ошибок. Если вы когда-нибудь задали вопрос об ошибке, вы также должны включить эту ошибку. – rmaddy

ответ

0

Если вы не используете последнюю LLVM компилятора (и, возможно, включить конкретный вариант), компилятор выдаст предупреждение, если он еще не видел декларацию метод, когда этот метод вызывается. Поскольку компилятор выполняет однопроходное сканирование при компиляции, это проблема, с которой вы реализуете методы после вызова сайта.

Либо переместить реализацию или добавить это в верхней части YourClass.m:

@interface YourClass() 
- (void)rotate; 
- (void)returnCar; 
- (void)continueRotation; 
@end 
+1

Любой, кто использует Xcode 4.5 или новее, не будет иметь этой проблемы, если они специально не изменили настройку компилятора проекта. Но это хороший момент для тех, кто все еще использует старые компиляторы. – rmaddy

+0

@maddy Спасибо. Я не был уверен, какой Xcode несет бит компилятора. – bbum

Смежные вопросы

 Смежные вопросы