dapatkan nilai string dari UISegmentedControl

86

Bagaimana saya bisa mendapatkan nilai teks segmen di UISegmentedControl?

Matt S.
sumber

Jawaban:

201

Objective-C

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

Cepat:

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

Untuk indeks yang dipilih saat ini

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

Cepat 3:

segmentedControl.titleForSegment(at: segmentedControl.selectedSegmentIndex)
Ecnalyr
sumber
bertanya-tanya mengapa panggilan ini memberi saya extra argument 'at' in callkesalahan di swift 3 dengan Xcode 8.3
Umair
3

Karena ini adalah hasil Google pertama dan kami sekarang berada di era yang cepat:

Cepat:

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

    }
    else if(segementControl.selectedSegmentIndex == 1)
    {
         print(segementControl.titleForSegmentAtIndex(1))
    }
 }
shan
sumber