obter o valor da string de UISegmentedControl

86

Como posso obter o valor de texto de um segmento em um UISegmentedControl?

Matt S.
fonte

Respostas:

201

Objective-C

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

Rápido:

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

Para o índice selecionado atualmente

[segmentedControl titleForSegmentAtIndex:[segmentedControl selectedSegmentIndex]];
Brandon Bodnar
fonte
5

Swift 3:

segmentedControl.titleForSegment(at: segmentedControl.selectedSegmentIndex)
Ecnalyr
fonte
me perguntando por que essa chamada está me dando extra argument 'at' in callerro no swift 3 com Xcode 8.3
Umair
3

Como este é o primeiro resultado do Google e agora estamos na era da velocidade:

Rápido:

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

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