UISegmentedControl控件是分段顯示控件,用戶可以選擇它上展示的任一段部分,每一個部分都像是一個按鈕,如果被按下也會像UIButton一樣執行相應的方法。在這篇文章中我們將創建一個UISegmentedControl控件並讓它顯示三個部分,每一個部分都會顯示不同的文本內容。
需要的條件:Xcode6、iOS8以上系統(含iOS8)
具體步驟:
1.打開Xcode並創建一個新的Single View Application,填寫工程名稱,比如SegmentSwift,之后填寫相應的Organization Name和Organization Identifier。選擇Swift語言作為開發語言,選擇iPhone設備。
2.在項目工程中打開Storyboard,在Xcode6中默認是方形的,以便使用interface創建各種設備,在iOS8中可以使用constraints和size classes在storyboard中。因為選擇了iPhone,所以可以去掉size classes選項。
單擊Disable Size Classes:
3.往主界面拖拽Segmented Control,在拖拽一個Label,並設置Label的默認為本是:第一個被選擇,設置居中顯示,Segmented Control控件做如下設置,把Segments改為3,並設置對應的Segment和Title。如圖所示:
4.選擇Assistant Editor打開ViewController.swift,按住ctrl鍵拖拉Segmented Control控件到ViewController.swift,並創建:
用相同的方法拖拽Label到ViewController.swift中:
再次選擇Segmented Control到ViewController.swift中選擇Action:
5.在indexChanged方法中,當用戶改變UISegmentedControl的狀態時,方法則響應。
主程序:
@IBOutlet weak var textLabel: UILabel! @IBAction func indexChanged(sender: AnyObject) { switch segmentedControl.selectedSegmentIndex{ case 0: textLabel.text = "土肥圓" case 1: textLabel.text = "高富帥" case 2: textLabel.text = "白富美" default: break } } @IBOutlet weak var segmentedControl: UISegmentedControl!
6.程序運行的效果: