Получение значения тега кнопки в iPhone - PullRequest
4 голосов
/ 02 сентября 2011

Я сделал 20 кнопок динамически и получил значения тегов для всех кнопок.

Но мне нужно знать, как использовать значения этого тега.

Мне нужна информация о каждой нажатой кнопке со значениями тега.
Итак, как мне использовать эти значения тегов?

Ответы [ 7 ]

7 голосов
/ 02 сентября 2011

Вам необходимо установить target-action для каждой кнопки.

[button setTarget:self action:@selector(someMethod:) forControlEvents:UIControlEventTouchUpInside];

Затем реализовать someMethod: следующим образом:

- (void)someMethod:(UIButton *)sender {
    if (sender.tag == 1) {
        // do action for button with tag 1
    } else if (sender.tag == 2) {
        // do action for button with tag 2
    } // ... and so on
}
4 голосов
/ 02 сентября 2011

Зачем вам нужно использовать tag, чтобы получить кнопку.Вы можете напрямую получить ссылку на кнопку из метода действия.

- (void)onButtonPressed:(UIButton *)button {

    // "button" is the button which is pressed
    NSLog(@"Pressed Button: %@", button);

    // You can still get the tag
    int tag = button.tag;
}

Я надеюсь, что вы добавили target-action для кнопки.

[button addTarget:self action:@selector(onButtonPressed:) 
             forControlEvents:UIControlEventTouchUpInside];
3 голосов
/ 02 сентября 2011

Установите теги так:

for (createButtonIndex=0; createButtonIndex<buttonsCount; createButtonIndex++) 
    {
buttonCaps.tag=createButtonIndex;
}

И добавьте метод для отлова тегов: -

-(void)buttonsAction:(id)sender
{
    UIButton *instanceButton = (UIButton*)sender;

switch(instanceButton.tag)
{
case 1(yourTags):
//Code
break;
case 2:
//Code
break;
}
}

Надеюсь, это поможет!

3 голосов
/ 02 сентября 2011

Вы можете получить ссылку на это ваши кнопки, используя эти теги.Например, вы добавили UIButton s к UIView *mainView.Чтобы получить ссылку на эти кнопки, вы должны написать следующее:

UIButton *buttonWithTag1 = (UIButton *)[mainView viewWithTag:1];
1 голос
/ 02 сентября 2011
    usefully we use btn tag if You Write One Function For (more than one) Buttons .in action if we want to write separate Action For button at that situvation we use btn tag.it can get two ways  

    I) case  sender.tag
    //if we have four buttons Add,mul,sub,div having Same selector and add.tag=10
    mul.tag=20,sub.tag=30,div.tag=40;
    -(IBAction) dosomthing:(id)sender   
    {
    int x=10;
    int y=20;
    int result;
     if(sender.tag==10)
    {
    result=x+y;

    }else if(sender.tag==20)
    {
    result=x*y;

    }else if(sender.tag==30)
    {
    result=x-y;

    }else if(sender.tag==40)
    {
    result=x/y;

    }
    NSLog(@"%i",result);

    }

2)Case
UIButton *btn=[self.view viewWithTag:10];
then you got object of add button uyou can Hide It With btn.hidden=YES;
1 голос
/ 02 сентября 2011
- (IBAction)buttonPressed:(id)sender {
   UIButton selectedButton = (UIButton *)sender;
   NSLog(@"Selected button tag is %d%", selectedButton.tag);
}
0 голосов
/ 28 февраля 2013
UIButton *btn = (UIButton *)[mainView viewWithTag:button.tag];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...