(iPhone SDK) Как изменить UIButton по тегу id? - PullRequest
2 голосов
/ 17 февраля 2011

Я создал группу кнопок следующим образом:

NSString *nameImg;
UIButton *button;

for(int i=1;i<=144;i++){
    button = [[UIButton alloc] initWithFrame:CGRectMake(posX, posY, 43, 43)];
    nameImg = [NSString stringWithFormat:@"img%i.png",i];
    [button setBackgroundImage:[UIImage imageNamed:nameImg] forState:(UIControlState)normal];
    button.tag = i;
    [scrollView addSubview:button];

    posX += 55;

    if (i % 4 == 0){
            posY += 55;
        posX = 15;
    }
}

Как изменить кнопку, получив ее по тегу?Можно сделать что-то вроде следующей строки?

[button.tagId setTitle:@"hello"];

Я не хочу метод слушателя, я только хочу изменить кнопку, идентифицируя его по тегу.

Заранее спасибо

Ответы [ 3 ]

9 голосов
/ 17 февраля 2011
[(UIButton*)[scrollView viewWithTag:tagId] setTitle:@"hello" forState:UIControlStateNormal];
5 голосов
/ 17 февраля 2011

Вызовите viewWithTag: в родительском представлении.

UIButton *btn = (UIButton *)[scrollView viewWithTag:tagID];

Затем вы можете внести любые изменения, используя btn.

Не задан в вопросе, вы теряете память для кнопки внутри цикла. После добавления этого в scrollView вам нужно отправить релиз на кнопку.

0 голосов
/ 17 февраля 2011

Просмотрите руководство по программированию кодирования значения ключа от Apple .

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