У меня есть UISegmentedView, который я использую, чтобы предоставить пользователю возможность одного из двух вычислений, которые он может выполнить в моей программе. Если сегментированный элемент управления является односторонним, он должен отображать 4 текстовых поля и их метки, если другой - только 3 (и расчет также изменится).
Это все работает, моя проблема с перемещением элементов управления (я хочу скрыть те, которые вам не нужны, а также переместить элементы управления на экране, чтобы он выглядел красиво)
Я хотел бы поместить это в один метод и просто передать UIControl, чтобы переместить его. Например, в моем .h
-(void) moveControlUp:(UIControl*)controlToMove;
Тогда по моему .m
- (void)moveControlUp:(UIControl*)controlToMove
{
controlToMove.frame = CGRectMake(controlToMove.frame.origin.x, controlToMove.frame.origin.y - 39, controlToMove.frame.size.width, controlToMove.frame.size.height);
}
и затем, когда я действительно хочу переместить элементы управления (labelPointsHeader - это UILabel, textPointsName - это текстовое поле):
[labelPointsHeader moveControlUp];
[textPointsName moveControlUp];
Это не работает, и я получаю две ошибки. «UILabel может не отвечать на '-moveControlUp'" и "Method '-moveControlUp' не найден (тип возвращаемого значения по умолчанию равен id). Я аварийно завершаю работу, когда нажимаю это, утверждая, что" нераспознанный селектор отправлен в экземпляр ".