2013-08-10 3 views
2

Comment implémenter les boutons de coche personnalisée dépend du nombre de tableaux, et devez autoriser plusieurs sélections dans ces boutons. Actuellement, je suis utilisé comme ça,Comment implémenter les boutons de coche dans l'iPad en dehors de la vue de table

int YAxis = 300; 
for (int x=0; x< [myResultArray count];x++) 
{ 
    checkmarkButton = [UIButton buttonWithType:UIButtonTypeCustom]; 
    checkmarkButton.frame = CGRectMake(100, YAxis, 20, 20); 
    checkmarkButton.tag = selectedServiceTag; 
    [self.view addSubview:checkmarkButton];YAxis = YAxis+30; 
} 

images Réglage pour coche:

[checkmarkButton setBackgroundImage:[UIImage imageNamed:@"checkBox_none"] forState:UIControlStateNormal]; 
    [checkmarkButton addTarget:self action:@selector(serviceSelected:) forControlEvents:UIControlEventTouchUpInside]; 

alors j'avais mettre en œuvre la méthode d'action.

 -(void)serviceSelected 
    { 
     checkmarkButton.selected = !checkmarkButton.selected; 
     if (checkmarkButton.selected) 
     { 
      [checkmarkButton setBackgroundImage:[UIImage imageNamed:@"checkBox"] forState:UIControlStateNormal]; 
     } 
     else 
     { 
      [checkmarkButton setBackgroundImage:[UIImage imageNamed:@"checkBox_none"] forState:UIControlStateNormal]; 
     } 
    } 

Mais, au moment de la sélection, seul le dernier bouton d'index est sélectionné.

Répondre

0

essayer ce code:

vérifier votre extension d'image png ou jpg

-(IBAction)serviceSelected:(id)sender 
    { 
    UIButton *tmpYes = (UIButton *)sender; 

     if (tmpYes.currentBackgroundImage==[UIImage imageNamed:@"checkBox.png"]) { 

      [tmpYes setBackgroundImage:[UIImage imageNamed:@"checkBox_none.png"] forState:UIControlStateNormal]; 

     } 
     else 
     { 
      [tmpYes setBackgroundImage:[UIImage imageNamed:@"checkBox_none.png"] forState:UIControlStateNormal]; 



     } 
    } 
Questions connexes