Где события в Какао Touch? - PullRequest
       8

Где события в Какао Touch?

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

Я изучаю Cocoa Touch несколько дней, и сегодня застрял, пытаясь найти способ реализовать пользовательское событие. Событие, которое я вижу в Инспекторе соединений для моего подкласса UIView.
Что у меня есть:
На MainVindow есть UILabel и MyView: UIView. MyView содержит UISlider. Интерфейсы для контроллера и MyView

// 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 что-то, что позволит ему вызвать событие после изменения value .
Кто-нибудь может мне помочь? Моя основная область в программировании - это .NET, и я начинаю думать, что ее терминология не подходит для этого случая.

Спасибо.

1 Ответ

2 голосов
/ 18 апреля 2010

Я не знаю, правильно ли я вас понимаю, но думаю, что вам нужно реагировать на пользовательские события из компонентов интерфейса. В Какао термин «событие» используется только для объектов, которые описывают фактическое событие, например касание или нажатие.

Чтобы реагировать на события более высокого уровня, такие как перетаскивание ползунка или нажатие кнопки, Cocoa использует парадигму целевого действия. Вы настраиваете компонент пользовательского интерфейса (класс производного представления UIControl) для отправки данного сообщения заданной цели всякий раз, когда компонент обнаруживает изменение своего состояния.

Чтобы установить цель и метод действия, вы можете использовать Interface Builder или метод UIControl addTarget:action:forControlEvents:.

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