J'essaie d'éviter un crash d'application ici ... J'ai un bouton qui supprimera un segment d'un UISegmentedControl. Si ce bouton est enfoncé et que l'utilisateur a sélectionné le segment à supprimer, le segment sera supprimé et aucune sélection ne sera mise en surbrillance. Cependant, lorsqu'un autre bouton est poussé qui effectue une action qui récupère le selectedSegmentIndex, l'application se bloque.
En bref: existe-t-il un moyen de forcer la sélection d'un segment dans un UISegmentedControl?
edit il semble que l'UISegmentedControl retourne un selectedSegmentIndex de -1 quand aucun segment n'est sélectionné ... voyons ce que je peux faire d'ici.
Utilisez comme ça .. yourSegmentname.selectedSegmentIndex = 1;
// ou le segment souhaité
Ce code est pour Swift 2.0
@IBOutlet weak var segmentcontroll: UISegmentedControl!
@IBAction func segmentneeded(sender: AnyObject)
{
if(segmentcontroll.selectedSegmentIndex==0)
{
self.view.backgroundColor=UIColor.purpleColor()
segmentcontroll.selectedSegmentIndex=UISegmentedControlNoSegment
}
else if(segmentcontroll.selectedSegmentIndex==1)
{
self.view.backgroundColor=UIColor.yellowColor()
segmentcontroll.selectedSegmentIndex=UISegmentedControlNoSegment
}
else
{
self.view.backgroundColor=UIColor.grayColor()
segmentcontroll.selectedSegmentIndex=UISegmentedControlNoSegment
}
}