UISegmentedControl在Swift中的使用
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.程序运行的效果:
UISegmentedControl在Swift中的使用的更多相关文章
- swift 中关于open ,public ,fileprivate,private ,internal,修饰的说明
关于 swift 中的open ,public ,fileprivate,private, internal的区别 以下按照修饰关键字的访问约束范围 从约束的限定范围大到小的排序进行说明 open,p ...
- 阿里巴巴最新开源项目 - [HandyJSON] 在Swift中优雅地处理JSON
项目名称:HandyJSON 项目地址:https://github.com/alibaba/handyjson 背景 JSON是移动端开发常用的应用层数据交换协议.最常见的场景便是,客户端向服务端发 ...
- Swift中的可选链与内存管理(干货系列)
干货之前:补充一下可选链(optional chain) class A { var p: B? } class B { var p: C? } class C { func cm() -> S ...
- 在Swift中实现单例方法
在写Swift的单例方法之前可以温习一下Objective-C中单例的写法: + (instancetype)sharedSingleton{ static id instance; static d ...
- [翻译]理解Swift中的Optional
原文出处:Understanding Optionals in Swift 苹果新的Swift编程语言带来了一些新的技巧,能使软件开发比以往更方便.更安全.然而,一个很有力的特性Optional,在你 ...
- 窥探Swift之使用Web浏览器编译Swift代码以及Swift中的泛型
有的小伙伴会问:博主,没有Mac怎么学Swift语言呢,我想学Swift,但前提得买个Mac.非也,非也.如果你想了解或者初步学习Swift语言的话,你可以登录这个网站:http://swiftstu ...
- swift 中指针的使用UnsafeMutablePointer
在swift中已经弱化了指针的使用,可以这么使用 let s: NSRange = NSMakeRange(, ) let at = UnsafeMutablePointer<NSRange&g ...
- swift 中数据类型那个的转换
在swift中关于数据类型的转换,如果参数是可选类型? 那么打印或者转换的结果 会带有Optional 字样,,
- swift中Range的使用书名
在swift中Range有两种用法 1.把字符串转换成NSString来使用 //这里是把swift的字符换转换成了nsstring 使用 let str :NSString = text.strin ...
随机推荐
- Linux的常用命令(2) - 关机
关机命令 shutdown‑h now 立即进行关机 shutdown‑r now 现在重新启动计算机 -t sec : -t后面加秒数,即"过几秒后关机" -k : 不 ...
- Myeclipse Db Browser使用
1.打开Myeclipse,选择菜单栏Window-->Show View-->Other,展开MyEclipse Database,选择DB Browser,打开数据库浏览视图 2. 空 ...
- [驱动注册]platform_driver_register()与platform_device_register()
[驱动注册]platform_driver_register()与platform_device_register() 设备与驱动的两种绑定方式:在设备注册时进行绑定及在驱动注册时进行绑定. ...
- DB Query Analyzer 6.02 is released, 71 articles concerned have been published
DB Query Analyzer is presented by Master Genfeng, Ma from Chinese Mainland. It has English version n ...
- PS 滤镜算法原理——曝光过度
这个算法的原理,就是将图像反相,然后分别比较原图与反相后的图三个通道的大小,将小的值输出. clc; clear all; Image=imread('4.jpg'); Image=double(Im ...
- How to download the installation package by ZOL Downer
How to download the installation package by ZOL Downer Ma Genfeng (Guangdong Unitoll Services incorp ...
- 【5】-阿里面试题android网络图片加载优化
题目: 遇到网络不好,卡顿的时候如何对网络的加载图片进行优化? 思路: 从加载的图片的本身和手机的存储两方面考虑 解决办法: 1.找现有图片格式的替换者 在众多的图片格式中,选择了Google的Web ...
- 入职第一天:前端leader手把手教我入门Vue服务器端渲染(SSR)
继前段时间西安电面之后顺利拿到了OFFER,今天(5月2号)是我入职第一天,在简短的内部培训了一上午后,前端leader让我先了解下什么是vue的服务器端渲染(SSR). SSR,英文全称叫 Serv ...
- mysql海量数据的优化
转载:https://www.cnblogs.com/trying/archive/2013/08/15/3259126.html 下面是一部分比较重要的建议:1.选择正确的存储引擎以 MySQL为例 ...
- spring中一些aware接口
Spring中提供一些Aware相关接口,像是BeanFactoryAware. ApplicationContextAware.ResourceLoaderAware.ServletContextA ...