obtenir la valeur de chaîne de UISegmentedControl

86

Comment puis-je obtenir la valeur textuelle d'un segment dans un UISegmentedControl?

Matt S.
la source

Réponses:

201

Objectif c

NSString *title = [segment titleForSegmentAtIndex:segment.selectedSegmentIndex];

Rapide:

let title = segment.titleForSegment(at: segment.selectedSegmentIndex)
Kevin Sylvestre
la source
30
[segmentedControl titleForSegmentAtIndex:int];

Pour l'index actuellement sélectionné

[segmentedControl titleForSegmentAtIndex:[segmentedControl selectedSegmentIndex]];
Brandon Bodnar
la source
5

Swift 3:

segmentedControl.titleForSegment(at: segmentedControl.selectedSegmentIndex)
Ecnalyr
la source
Je me demande pourquoi cet appel me donne une extra argument 'at' in callerreur dans swift 3 avec Xcode 8.3
Umair
3

Comme il s'agit du premier résultat Google et que nous sommes maintenant dans l'ère rapide:

Rapide:

seg_ctrl.titleForSegmentAtIndex( seg_ctrl.selectedSegmentIndex)
John
la source
0
@IBAction func segmentedControlAction(sender: AnyObject) {
    if(segementControl.selectedSegmentIndex == 0)
    {
        print(segementControl.titleForSegmentAtIndex(0))

    }
    else if(segementControl.selectedSegmentIndex == 1)
    {
         print(segementControl.titleForSegmentAtIndex(1))
    }
 }
Shan
la source