iOS开发——UI篇Swift篇&UIPickerView

UIPickerView

  1     //返回按钮事件
  2     @IBAction func backButtonClick()
  3     {
  4         self.navigationController?.popViewControllerAnimated(true)
  5     }
  6
  7     var authorsArray:[String]!
  8     var appsArray:[String]!
  9
 10
 11     override func viewDidLoad() {
 12         super.viewDidLoad()
 13
 14         titleLabel.text = titleString
 15
 16
 17         // Do any additional setup after loading the view.
 18
 19         //创建选择控制器
 20         var pickerView:UIPickerView = UIPickerView(frame: CGRectMake(0, 200, 0, 0))
 21
 22         //添加到视图上
 23         self.view.addSubview(pickerView)
 24
 25         //指定数据源
 26         pickerView.dataSource = self
 27
 28         //指定代理
 29         pickerView.delegate = self
 30
 31         //创建2个数组
 32         authorsArray = ["刘明洋","汪鸿俊","任小蕾"]
 33         appsArray = ["租房点评","哪里逃","AllOff","iJump","数独"]
 34
 35
 36
 37
 38         //常用的一些属性和方法介绍
 39
 40
 41
 42
 43
 44
 45     }
 46
 47     override func didReceiveMemoryWarning() {
 48         super.didReceiveMemoryWarning()
 49         // Dispose of any resources that can be recreated.
 50     }
 51
 52
 53     /*
 54     // MARK: - Navigation
 55
 56     // In a storyboard-based application, you will often want to do a little preparation before navigation
 57     override func prepareForSegue(segue: UIStoryboardSegue!, sender: AnyObject!) {
 58         // Get the new view controller using segue.destinationViewController.
 59         // Pass the selected object to the new view controller.
 60     }
 61     */
 62
 63
 64     // MARK: - UIPickerViewDataSource
 65
 66     //返回多少列
 67     func numberOfComponentsInPickerView(pickerView: UIPickerView) -> Int
 68     {
 69         return 2
 70     }
 71
 72     //每一列返回多少行
 73     func pickerView(pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int
 74     {
 75         //第1列返回authorsArray的个数
 76         if component == 0{
 77             return authorsArray.count
 78         }
 79         //第2列返回appsArray的个数
 80         else if component == 1 {
 81             return appsArray.count
 82         }
 83
 84         return 0
 85     }
 86
 87     // MARK: - UIPickerViewDelegate
 88
 89     //通过字符串来创建选择控制器
 90 //    func pickerView(pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String!
 91 //    {
 92 //        //第1列返回authorsArray对应的值
 93 //        if component == 0{
 94 //            return authorsArray[row]
 95 //        }
 96 //
 97 //            //第2列返回appsArray对应的值
 98 //        else if component == 1 {
 99 //            return appsArray[row]
100 //        }
101 //
102 //        return ""
103 //    }
104
105     //通过View来创建带有图片的选择控制器
106     func pickerView(pickerView: UIPickerView, viewForRow row: Int, forComponent component: Int, reusingView view: UIView!) -> UIView
107     {
108         var view:UIView = UIView(frame: CGRectMake(0, 0, 200, 40))
109
110         //创建图像视图
111         var imageView = UIImageView(frame: CGRectMake(0, 0, 40, 40))
112         imageView.image = UIImage(named: "cellImage.png")
113
114
115         //创建文本标签
116         var label:UILabel = UILabel(frame: CGRectMake(40, 0, 160, 40))
117         //第1列返回authorsArray对应的值
118         if component == 0{
119             label.text =  authorsArray[row]
120         }
121
122         //第2列返回appsArray对应的值
123         else if component == 1 {
124             label.text =  appsArray[row]
125         }
126
127
128
129         //添加图像
130         view.addSubview(imageView)
131
132         //添加文本标签
133         view.addSubview(label)
134
135         return view
136     }
137
138
139     //选项改变后,触发代理事件
140     func pickerView(pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int)
141     {
142         println("当前选择的是第\(component)列   第\(row)行")
143     }
时间: 2024-12-18 18:27:08

iOS开发——UI篇Swift篇&UIPickerView的相关文章

iOS开发——UI高级Swift篇&swift简单总结tableView

swift简单总结tableView 今天来总结一个很简单的问题,真心说出来丢脸,但是由于本人在写swift项目的时候总是发现Xib不能加载,而且不止一次,所以就简单的总结一下! 一:简单的使用缓存池 1.设置StoryBoard中cell的ID 2.在控制器的Cell中就可以直接使用ID创建了 1 override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UI

iOS开发——技术精华Swift篇&Swift 2.0和Objective-C2.0混编之第三方框架的使用

Swift 2.0和Objective-C2.0混编之第三方框架的使用 swift 语言是苹果公司在2014年的WWDC大会上发布的全新的编程语言.Swift语言继承了C语言以及Objective-C的特性,且克服了C语言的兼容性问题.Swift语言采用安全编程模式,且引入了多种新功能,使得编程工作更加简便,灵活! 2015年6月9日苹果又一次给所有开发之者带来了一个惊喜,那就是今年年底swift讲开源,者队iOS开发着来说无疑是一个值得兴奋的消息,可是就在这短短的几个月里面swift吸引了越来

iOS开发——新特性Swift篇&Swift 2.0 异常处理

Swift 2.0 异常处理 WWDC 2015 宣布了新的 Swift 2.0. 这次重大更新给 Swift 提供了新的异常处理方法.这篇文章会主要围绕这个方面进行讨论. 如何建造异常类型? 在 iOS 开发当中,我们会面对很多异常处理.在 Cocoa Touch 中我们使用 NSError 来进行异常处理.在新的 Swift 2.0 中,我们可以使用新的 ErrorType protocol. 在 Swift 中, enum 是最好的方法建立属于你自己的异常类型,你只要在你的 enum 中确

iOS开发——UI精选OC篇&UIApplication,UIWindow,UIViewController,UIView(layer)简单介绍

UIApplication,UIWindow,UIViewController,UIView(layer)简单介绍 一:UIApplication:单例(关于单例后面的文章中会详细介绍,你现在只要知道,单例在应用程序的整个生命周期中只有一个对象). App的启动过程 打开程序之后-> 1:Main函数 2:UIapplicationMain函数 3:初始化UIApplication(创建) 4:设置UIApplication代理和相应的代理属性 5:开启事件循环,监听系统事件 6监测info.p

iOS开发——网络编程Swift篇&Alamofire详解

Alamofire详解 预览图 Swift Alamofire 简介 Alamofire是 Swift 语言的 HTTP 网络开发工具包,相当于Swift实现AFNetworking版本. 当然,AFNetworking非常稳定,在Mac OSX与iOS中也能像其他Objective-C代码一样用Swift编写.不过Alamofire更适合Swift语言风格习惯(Alamofire与AFNetworking可以共存一个项目中,互不影响). Alamofire 取名来源于Alamo Fire fl

iOS开发——项目实战Swift篇&swift 2.0项目开发总结二(开发常用)

swift 2.0项目开发总结二(开发常用) 一:相册中选择相片到App指定位置 随 着相机像素的提高,实际用户选择的图片都是很大的,有的高达5.6M,如果直接使用用户选着的图片,非常消耗内存,并且也用不到这么高像素的图片,可以当 用户选着好图片后,在UIImagePickerController对应的代理方法中,先将图片进行重新绘制为需要的大小,在设置给iconView 1 /// MARK: 摄像机和相册的操作和代理方法 2 extension MeViewController: UIIma

iOS开发——学习总结swift篇&swift 2.0学习与总结一

swift 2.0学习与总结一 一:属性策略(OC中的叫法) strong: 在Swift中是默认的 weak: 通过weak关键词申明 weak var delegate: UITextFieldDelegate? readonly,readwrie 直接通过声明变量var,声明常量let的方式来指明 copy 通过@NSCopying指令声明. 值 得注意的是String,Array和Dictionary在Swift是以值类型(value type)而不是引用类型(reference typ

ios开发——实用技术篇Swift篇&地址薄、短信、邮件

1 //返回按钮事件 2 @IBAction func backButtonClick() 3 { 4 self.navigationController?.popViewControllerAnimated(true) 5 } 6 7 //新增联系人 8 @IBAction func addPeople () 9 { 10 //取得电话薄句柄 11 var error:Unmanaged<CFError>? 12 var addressBook: ABAddressBookRef? = AB

iOS开发——项目实战Swift篇&amp;swift 2.0项目开发总结一(开发常用)

swift 2.0项目开发总结一(开发常用) 一:新特性(版本判断)的实现 1 let versionStr = "CFBundleShortVersionString" 2 let cureentVersion = NSBundle.mainBundle().infoDictionary![versionStr] as! String 3 let oldVersion = (NSUserDefaults.standardUserDefaults().objectForKey(vers

ios开发——实用技术总结Swift篇&amp;swift常用开发技术总结

swift常用开发技术总结 懒加载:属性,数组(字典),控件... 数组(懒加载): 1 lazy var shops:Array<Dictionary<String, String>> = { 2 3 return [ 4 5 [ 6 7 "icon" : "danjianbao", 8 9 "name" : "单肩包" 10 11 ], 12 13 [ 14 15 "icon"