iOS开发——UI篇Swift篇&UIPickerView
UIPickerView
//返回按钮事件
@IBAction func backButtonClick()
{
self.navigationController?.popViewControllerAnimated(true)
}
var authorsArray:[String]!
var appsArray:[String]!
override func viewDidLoad() {
super.viewDidLoad()
titleLabel.text = titleString
// Do any additional setup after loading the view.
//创建选择控制器
var pickerView:UIPickerView = UIPickerView(frame: CGRectMake(, , , ))
//添加到视图上
self.view.addSubview(pickerView)
//指定数据源
pickerView.dataSource = self
//指定代理
pickerView.delegate = self
//创建2个数组
authorsArray = ["刘明洋","汪鸿俊","任小蕾"]
appsArray = ["租房点评","哪里逃","AllOff","iJump","数独"]
//常用的一些属性和方法介绍
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
/*
// MARK: - Navigation
// In a storyboard-based application, you will often want to do a little preparation before navigation
override func prepareForSegue(segue: UIStoryboardSegue!, sender: AnyObject!) {
// Get the new view controller using segue.destinationViewController.
// Pass the selected object to the new view controller.
}
*/
// MARK: - UIPickerViewDataSource
//返回多少列
func numberOfComponentsInPickerView(pickerView: UIPickerView) -> Int
{
}
//每一列返回多少行
func pickerView(pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int
{
//第1列返回authorsArray的个数
{
return authorsArray.count
}
//第2列返回appsArray的个数
{
return appsArray.count
}
}
// MARK: - UIPickerViewDelegate
//通过字符串来创建选择控制器
// func pickerView(pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String!
// {
// //第1列返回authorsArray对应的值
// if component == 0{
// return authorsArray[row]
// }
//
// //第2列返回appsArray对应的值
// else if component == 1 {
// return appsArray[row]
// }
//
// return ""
// }
//通过View来创建带有图片的选择控制器
func pickerView(pickerView: UIPickerView, viewForRow row: Int, forComponent component: Int, reusingView view: UIView!) -> UIView
{
var view:UIView = UIView(frame: CGRectMake(, , , ))
//创建图像视图
var imageView = UIImageView(frame: CGRectMake(, , , ))
imageView.image = UIImage(named: "cellImage.png")
//创建文本标签
var label:UILabel = UILabel(frame: CGRectMake(, , , ))
//第1列返回authorsArray对应的值
{
label.text = authorsArray[row]
}
//第2列返回appsArray对应的值
{
label.text = appsArray[row]
}
//添加图像
view.addSubview(imageView)
//添加文本标签
view.addSubview(label)
return view
}
//选项改变后,触发代理事件
func pickerView(pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int)
{
println("当前选择的是第\(component)列 第\(row)行")
}
iOS开发——UI篇Swift篇&UIPickerView的更多相关文章
- iOS开发——技术精华Swift篇&Swift 2.0和Objective-C2.0混编之第三方框架的使用
swift 语言是苹果公司在2014年的WWDC大会上发布的全新的编程语言.Swift语言继承了C语言以及Objective-C的特性,且克服了C语言的兼容性问题.Swift语言采用安全编程模式,且引 ...
- iOS开发——新特性Swift篇&Swift 2.0 异常处理
Swift 2.0 异常处理 WWDC 2015 宣布了新的 Swift 2.0. 这次重大更新给 Swift 提供了新的异常处理方法.这篇文章会主要围绕这个方面进行讨论. 如何建造异常类型? 在 i ...
- iOS开发——UI精选OC篇&UIApplication,UIWindow,UIViewController,UIView(layer)简单介绍
UIApplication,UIWindow,UIViewController,UIView(layer)简单介绍 一:UIApplication:单例(关于单例后面的文章中会详细介绍,你现在只要知道 ...
- iOS开发——网络编程Swift篇&Alamofire详解
Alamofire详解 预览图 Swift Alamofire 简介 Alamofire是 Swift 语言的 HTTP 网络开发工具包,相当于Swift实现AFNetworking版本. 当然,AF ...
- ios开发——实用技术总结Swift篇&swift常用开发技术总结
swift常用开发技术总结 懒加载:属性,数组(字典),控件... 数组(懒加载): lazy var shops:Array<Dictionary<String, String>& ...
- iOS开发——网络编程Swift篇&(八)SwiftyJSON详解
SwiftyJSON详解 最近看了一些网络请求的例子,发现Swift在解析JSON数据时特别别扭,总是要写一大堆的downcast(as?)和可选(Optional),看?号都看花了.随后发现了这个库 ...
- ios开发——实用技术篇Swift篇&地址薄、短信、邮件
//返回按钮事件 @IBAction func backButtonClick() { self.navigationController?.popViewControllerAnimated(tru ...
- iOS开发——图形编程Swift篇&CAShapeLayer实现圆形图片加载动画
CAShapeLayer实现圆形图片加载动画 几个星期之前,Michael Villar在Motion试验中创建一个非常有趣的加载动画. 下面的GIF图片展示这个加载动画,它将一个圆形进度指示器和圆形 ...
- iOS开发零基础--Swift篇 元组
元组的介绍 元组是Swift中特有的,OC中并没有相关类型 它是什么呢? 它是一种数据结构,在数学中应用广泛 类似于数组或者字典 可以用于定义一组数据 组成元组类型的数据可以称为“元素” 元组的定义 ...
- iOS开发零基础--Swift篇 循环
循环的介绍 在开发中经常会需要循环 常见的循环有:for/while/do while. 这里我们只介绍for/while,因为for/while最常见 for循环的写法 最常规写法 // 传统写法 ...
随机推荐
- leetcode:Reverse Integer(一个整数反序输出)
Question:Reverse digits of an integer. Example1: x = 123, return 321Example2: x = -123, return -321 ...
- Linux securecrt破解
其实,以前接触过破解的东西,但是很多东西早就忘记了,何况是在Linux环境下. 结果我常识更改时间,哦,不是更改日期,往后推4天,结果显示了26 days remaining. 所以完全可以更改日期来 ...
- 黑马程序员——Foundation中的OC结构体
<span style="font-size:14px">------<a target="_blank" href="http:/ ...
- MATLAB图像处理工具箱
下列表格中除了个别函数外,其余函数都是图像处理工具箱提供的关于图像处理的函数,现摘录到此以备查找. 表1 图像显示 函数名 功能说明 函数名 功能说明 colorbar 颜色条显示 montage 按 ...
- python 字符串,数组,元祖操作基础巩固。
由于上个星期有点忙,没时间来抽空记一些有用的东西.丢了比较久的python很多忘记的小操作我也会重新捡起来 以前最容易搞混的 str.split() #操作会生成一个数组对象.example:'lap ...
- 第二百一十一天 how can i 坚持
参与感.做项目要有激情. 睡觉.
- 【转】log4j详解及简易搭建
原文链接:http://www.cnblogs.com/mailingfeng/archive/2011/07/28/2119937.html log4j是一个非常强大的log记录软件. 首先当然是得 ...
- C++11初始化列表
[C++11之初始化列表] 在C++03中,在严格遵守POD的定义和限制条件的结构及类型上可以使用初始化列表(initializer list),构想是结构或是数组能够依据成员在该结构内定义的顺序通过 ...
- JavaScript 核心参考教程 内置对象
这个标准基于 JavaScript (Netscape) 和 JScript (Microsoft).Netscape (Navigator 2.0) 的 Brendan Eich 发明了这门语言,从 ...
- ZOJ 3195 Design the city LCA转RMQ
题意:给定n个点,下面n-1行 u , v ,dis 表示一条无向边和边权值,这里给了一颗无向树 下面m表示m个询问,问 u v n 三点最短距离 典型的LCA转RMQ #include<std ...