//
// ViewController.swift
// UISegmentedControl
//
// Created by liaojianguo on 15/11/8.
// Copyright © 2015年 liaojianguo. All rights reserved.
//
import UIKit
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
//先创建一个数组用于设置分段控件的标题
let appsArray:[String] = ["选项1","选项2","选项3","选项4","选项5"]
//let appsArray = ["选项一","选项二","选项三",UIImage(named: "cat.jpg")!] as [AnyObject]
//创建分段控件
let segment:UISegmentedControl = UISegmentedControl(items: appsArray)
//设置坐标大小
segment.frame = CGRectMake(20, 100, 280, 40)
segment.center=self.view.center
segment.selectedSegmentIndex=0 //默认选中第1项
//获取选中的坐标
//var index = segment.selectedSegmentIndex
//设置下标等于2的标题
segment.setTitle("2", forSegmentAtIndex: 2)
//设置下标等于3的图片,图片和标题不能共存,设置图片之后,原来标题就不显示了
let image = UIImage(named: "e022.png")
segment.setImage(image, forSegmentAtIndex: 3)
//在坐标为2的位置,插入一个分段标题
segment.insertSegmentWithTitle("3", atIndex: 2, animated: true)
//在坐标为4的位置,插入一个分段图片
//segment.insertSegmentWithImage(UIImage(named: "panpan.jpg")!, atIndex: 2, animated: true)
//获取segment的数量
//var count = segment.numberOfSegments;
//print(count)
//获取某一个下标下的标题
//var title = segment.titleForSegmentAtIndex(1)
//momentary默认为NO点击之后一直处于选中状态,除非点击其他分段,才恢复。 当设置为YES时,点击选中,但一会就是恢复到正常状态。
segment.momentary = true;
//设置某一分段是否可用
segment.setEnabled(false, forSegmentAtIndex: 1)
//设置下标为2的segment的宽度
segment.setWidth(50, forSegmentAtIndex: 1)
//是否根据segment的内容改变segment的宽度
segment.apportionsSegmentWidthsByContent = true
//设置标题颜色
//segment.tintColor = UIColor.redColor()
//移除下标是2的segment
segment.removeSegmentAtIndex(5, animated: true)
//移出所有segment
//segment.removeAllSegments()
segment.setContentOffset(CGSizeMake(5,5),forSegmentAtIndex:1)
segment.addTarget(self, action: "segmentDidchange:",
forControlEvents: UIControlEvents.ValueChanged) //添加值改变监听
//添加到视图上
self.view.addSubview(segment)
}
func segmentDidchange(segmented:UISegmentedControl){
//获得选项的索引
print(segmented.selectedSegmentIndex)
//获得选择的文字
print(segmented.titleForSegmentAtIndex(segmented.selectedSegmentIndex))
}
}
let shadow = NSShadow()
shadow.shadowColor = UIColor(red: 1.0, green: 1.0, blue: 1.0, alpha: 1.0)
shadow.shadowOffset = CGSizeMake(0, 1)
let color : UIColor = UIColor(red: 220.0/255.0, green: 104.0/255.0, blue: 1.0/255.0, alpha: 1.0)
let titleFont : UIFont = UIFont(name: "AmericanTypewriter", size: 25.0)!
let attributes = [
NSForegroundColorAttributeName : color,
NSShadowAttributeName : shadow,
NSFontAttributeName : titleFont
]
segmented.setTitleTextAttributes(attributes,forState:UIControlState.Normal)