2010-04-19 5 views
1

J'ai créé cinq boutons dans le contrôleur de vue. Si j'ai cliqué sur le bouton, il va à la vue correspondante. Maintenant, je veux afficher le bouton en surbrillance quand on clique dessus. Il ne devrait revenir à l'état normal que lorsque je clique sur l'autre bouton. J'ai mis l'autre image pour les boutons en surbrillance quand je l'ai cliqué, mais il montre que l'état en surbrillance seulement une seconde. Maintenant, je veux afficher les boutons en surbrillance jusqu'à ce qu'un autre bouton soit cliqué. Identique à une opération Tabbar (j'ai utilisé des boutons au lieu de tabbar pour les exigences).Comment mettre en surbrillance le bouton jusqu'à ce que la vue suivante soit modifiée dans l'iphone?

Maintenant, j'ai utilisé le code suivant,

void didLoad 
{ 

    [btn1 setImage:[UIImage imageNamed:@"ContentColor.png"] forState:UIControlStateHighlighted]; 
    [btn2 setImage:[UIImage imageNamed:@"bColor.png"] forState:UIControlStateHighlighted]; 
    [btn3 setImage:[UIImage imageNamed:@"ShColor.png"] forState:UIControlStateHighlighted]; 
    [btn4 setImage:[UIImage imageNamed:@"PicturesColor.png"] forState:UIControlStateHighlighted]; 
    [btn5 setImage:[UIImage imageNamed:@"infoColor.png"] forState:UIControlStateHighlighted]; 
} 

S'il vous plaît, aidez-moi.

Merci.

Répondre

2

Vous devez manipuler l'image pour l'état sélectionné, pas pour l'état en surbrillance. Le point culminant sera désactivé lors de la retouche ou toucher à l'extérieur, comme vous l'avez vu, alors que la sélection est persistante.

1

solution simple serait ...

sur chaque clic sur un bouton changer son image (pour l'état normal) à l'image mis en évidence pour ce bouton particulier et définir d'autres l'image 4 bouton à l'image normale ...

+0

@ mihirpmehta, Si je fais cela, cela ne se produira qu'une seconde. Mais je veux mettre en surbrillance le bouton jusqu'à ce que le bouton suivant soit cliqué. (Barre similaire) – Pugal

+0

ci-dessus La logique est pour cela seulement ... supposons que l'état normal de button1 est là et image12 est pour surligné ... dans le bouton click1 de Button1 image to button12 (Pour un état normal) ... et pour les 4 autres boutons, changez l'image à l'image de leur état normal ... Cela fonctionnera certainement ... avez-vous eu mon point de vue ...? –

1

Il semble que vous devriez utiliser un UISegmentedControl avec 5 segments au lieu de 5 boutons. Il se comporte déjà de cette façon, un segment reste en surbrillance jusqu'à ce que vous en sélectionniez un autre (sauf si vous définissez la propriété momentanée).

Questions connexes