iphone-Идентифицирующий контейнер кнопки - PullRequest
0 голосов
/ 08 апреля 2011

У меня есть такой класс,

@interface event
{
NSString *name;
UIButton *button;
}

В моем контроллере представления у меня есть несколько объектов класса событий, и я добавил все кнопки этих объектов событий в класс контроллеров представления (self).view)

-(void) buttonPressed:(id) sender

Теперь я обрабатываю touchevent в моем контроллере представления, как указано выше, теперь как я могу определить объект события, к которому принадлежит нажатая кнопка (отправитель).

Ответы [ 2 ]

0 голосов
/ 08 апреля 2011

Вы можете просто сравнить свойство кнопки объекта события с параметром отправителя вашего метода действия.Предполагая, что ваши объекты событий являются просто переменными-членами вашего контроллера представления, ваш код buttonPressed может выглядеть примерно так:

- (void)buttonPressed:(id)sender {
    if (sender == event1.button) {
       NSLog(@"Button pressed for event1");
    }
    else if (sender == event2.button) {
       NSLog(@"Button pressed for event2");
    }
}

Очевидно, вам придется объявить кнопку как @ свойство вашего объекта Event.

0 голосов
/ 08 апреля 2011

Вы должны добавить тег к своим объектам, например:

myObject.tag = 1;

Затем в вашем методе buttonPressed сделайте что-то вроде

if(sender.tag == 1){
    //...doSomething
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...