Я думаю, что у меня есть концептуальное недоразумение, и я был бы признателен за объяснение.
Внутри класса у меня был один и тот же блок кода, повторяющийся 3 раза (и работающий идеально), но чтобы попытаться сделать его более «эффективным», я вынул его и создал метод внутри класса следующим образом:
- (void)dateUP {
NSLog(@"dateUp");
[UIView beginAnimations:@"datePicker" context:nil];
[UIView setAnimationDuration:0.5];
datePicker.transform = CGAffineTransformMakeTranslation(0,-310);
[UIView commitAnimations];
}
и затем, где изначально был код, я положил:
[self dateUp];
и я добавил в свой .h:
-(void)dateUp;
Я создаю и получаю это предупреждение:
Line Location DetailPopUpView.m:165: warning: method definition for '-dateUp'
not found
и сбой с этим в консоли (и, между прочим, оператор NSLog не появляется в консоли):
*** Terminating app due to uncaught exception 'NSInvalidArgumentException',
reason: '*** -[DetailPopUpView dateUp:]: unrecognized selector sent to instance
0x3d33ef0'
Любая помощь приветствуется. Одна вещь, на которую я обращаю внимание, это то, что в консольном сообщении есть dateUp: (с двоеточием), как будто ожидается параметр. Так что, хотя самое простое решение - просто поставить код обратно, повторив его 3 раза, я бы хотел знать, что я делаю неправильно.
Спасибо.