経緯
- コードでどうしてもSegmentedControlの数を変えたかった
- すでにある投稿の中でaddSubViewして動的に変える方法が載っていたが、addSubViewはしたくなかった
- ついでにextension作ってしまおう!
方法
- Storyboardかコードでsegmentをはっつけて、StoryboardならばIBOutlet接続しておく
- 下のextensionをコピってきて、
segment.changeAllSegmentWithArray(["んっぽう!","んっぴゅう!","んってぅ!"])
Extension
UISegmentedControlExtension.swift
extension UISegmentedControl {
func changeAllSegmentWithArray(arr: [String]){
self.removeAllSegments()
for str in arr {
self.insertSegmentWithTitle(str, atIndex: self.numberOfSegments, animated: false)
}
self.selectedSegmentIndex = 0
}
}
参考
最後に
- そんな大したことないですが、参考までにどうぞ