2010-09-17 2 views
0

привет, я новичок в iphone. то, что я сделал, создает группу кнопок в представлении. Мой код такой же, как и подпапки.Как получить все значения тегов кнопок из группы кнопок

- (void)mymethod1 { 
    UIView *view = [[UIView alloc]initWithFrame:[[UIScreen mainScreen]bounds]]; 
     int row = 0; 
     int column = 0; 

     for (int i=6; i<_images.count; i++) { 

      buttonimage = [UIButton buttonWithType:UIButtonTypeCustom]; 

      buttonimage.frame = CGRectMake(column*60+5, row*60+5, 70,70); 
      [buttonimage setImage:[UIImage imageNamed:[_images objectAtIndex:i]] forState:UIControlStateNormal]; 
      buttonimage.tag = i; 
      [buttonimage addTarget:self 
         action:@selector(buttonClicked:) 
      forControlEvents:UIControlEventTouchUpInside]; 
      buttonimage.tag = i; 

      [view addSubview:buttonimage]; 

      if (column == 4) { 
       column = 0; 
       row++; 
      } else { 
       column++; 
      } 

     } 

     self.view = view; 
     [ view release]; 
} 

он отлично работает. но когда-либо я называю все кнопки в любых других функциях, которые она получает последнюю пуговицу только, например:

- (void)mymethod2 { 
NSLog(@"button value %d",buttonimage.tag); 

} 

«это получить в консоли значения кнопки 5». мне нужно получить все значения кнопки тегов в mymethod2 , как я могу получить все значения тегов кнопок. Пожалуйста, напишите какой-то код. Спасибо заранее.

ответ

6

Вам нужно перебирать все подвиды текущего вида, а затем проверить, чтобы увидеть, если это кнопка перед заливкой, что-то вроде этого

for (UIView* view in [self.view subviews]) { 
    if([view isKindOfClass:[UIButton class]]){ 
    UIButton *btn = (UIButton*)view; 
    NSLog(@"button value %d", btn.tag); 
    } 
} 
0

Всех значений Кнопки тегов: -

for(int i=0;i<3;i++){ 
    UIButton *theButton=[[UIButton alloc]init]; 
    theButton.tag=i; 

    //set their selector using add selector 
    [theButton addTarget:self action:@selector(buttonClicked:) forControlEvents:UIControlEventTouchDown]; 
    //set their frame color title or image 
    } 

-(void)buttonClicked:(UIButton *)inButton{ 
     int tags=inbutton.tag; 
} 
0
UIButton *BtnTmp=sender; 
if([BtnTmp tag]) 
    [BtnTmp setImage:[UIImage imageNamed:@"check.png"] forState:UIControlStateNormal]; 
else 
    [BtnTmp setImage:[UIImage imageNamed:@"uncheck.png"] forState:UIControlStateNormal]; 

BtnTmp.tag=!BtnTmp.tag; 
Смежные вопросы