IOS UISegmentedControl




//
//  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)


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值