Я изучаю Cocoa Touch несколько дней, и сегодня застряли, ища способ реализовать пользовательское событие. Событие, которое я могу увидеть в Connection Inspector для моего подкласса UIView.
Что у меня:
Есть UILabel и MyView: UIView на MainVindow. MyView содержит UISlider. Интерфейсы для контроллера и MyViewГде события в Cocoa Touch?
// Controller.h
@interface Controller : NSObject {
IBOutlet UILabel *label;
IBOutlet MyView *myView;
}
// I suppose that there should be something like -(IBAction) changeLabelValue for myView event
@end
// MyView.h
@interface MyView : UIView {
IBOutlet UISlider *slider;
float value;
}
- (IBAction) changeValue; //for slider "Changed Value" event
Что я хочу:
Добавить что-то в MyView, что позволяет ему подняться событие после изменения значения .
Может ли кто-нибудь мне помочь? Моя основная область программирования - .NET, и я начинаю думать, что ее терминология не подходит для этого случая.
Спасибо.
Вы правы, что ваша терминология .NET является для вас проблемой, поскольку я не могу понять, что вы просите. Если вы хотите, чтобы ваш IBAction выполнялся при изменении слайдера, вы просто перетаскиваете соединение в IB. Это похоже на текстовые объекты, но вы можете захотеть найти несколько иной подход. –
Хорошо, попробуйте объяснить мой сценарий более четко. В myView я хочу получить собственное значение из слайдера. Затем после некоторой модификации (получить квадратный корень, например) значение будет готово к использованию. Ярлык должен показать это окончательное значение. Моя проблема в том, как этикетка будет знать, что изменение стоимости. И я думаю, что реализовать это сообщение, как стандартное «событие» контроля (которое я вижу в группе «События» Инспектора связи для UISlider, UButton и т. Д.). Другими словами - создайте настраиваемый элемент управления, расширяющий функции UISlider. – yesenin