iphone: доступ к экземпляру UIButton по тегу - PullRequest
0 голосов
/ 04 мая 2011

Я поместил 6 UIButton на перо, я не хочу создавать 6 переменных для каждой кнопки, есть ли способ получить доступ к кнопкам по их тегу или как-то еще?

Я нашел метод viewWithTag,но, кажется, он используется для NSView.

THX ~

Ответы [ 4 ]

1 голос
/ 04 мая 2011

Если вы создали их в Интерфейсном Разработчике, вы должны перейти в IB и назначить уникальный тег каждой кнопке (1, 2, ...), и внутри своего кода вы можете ссылаться на них с помощью UIButton *button1 = (UIButton *)[self.view viewWithTag:1], UIButton *button2 = (UIButton *)[self.view viewWithTag:2]и т. д.

0 голосов
/ 04 мая 2011
- (IBAction)buttonPressed:(id)sender{
        UIButton *button = (UIButton *)sender;
        NSLog(@"%d",button.tag);

}
0 голосов
/ 04 мая 2011

Использование:

- (IBAction)buttonTouched:(id)sender{

    NSInteger tag = [sender tag];

    if (tag == 1) {
        NSLog(@"You Pressed 1");
    } else if (tag == 2) {
        NSLog(@"You Pressed 2");
    }

}

Теперь в Интерфейсном Разработчике установите тег на 1 или 2.

0 голосов
/ 04 мая 2011

Обычно вам не нужно создавать «переменные» для элементов управления, за исключением того, что вы хотите манипулировать ими во время выполнения.Вы можете просто создать свои методы и связать их с конкретными действиями (нажимать вверх внутри) кнопок UIB.Методы будут вызываться без необходимости использования переменных экземпляра UIButtons.

В противном случае, если вы хотите включить / отключить кнопки или манипулировать любыми другими атрибутами, у вас есть для создания переменных.для них.Я не понимаю, почему вы должны делать это с тегами, потому что для создания указателей на экземпляры UIButton требуется всего 2 строки кода (и одна для их синтеза).

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