IOS UIPickerView
来源:互联网 发布:阿里巴巴数据管家 编辑:程序博客网 时间:2024/04/29 16:29
import UIKitclass ViewController: UIViewController, UIPickerViewDelegate, UIPickerViewDataSource { var pickerView: UIPickerView! var month = [String]() var week = [String]() override func viewDidLoad() { // 初始化数据 month = ["January","February","March","April","May","June","July","August","September","October","November","December"] week = ["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"] // 定义一个按钮,复原数据回到初始状态 let button1 = UIButton() button1.frame = CGRectMake(self.view.frame.width/2 - 200, 50, 400, 50) button1.setTitle("复原数据回到初始状态", forState: UIControlState.Normal) button1.addTarget(self, action: "buttonAction:", forControlEvents: UIControlEvents.TouchUpInside) button1.tag = 1 // 定义一个按钮,刷新数据成中文 let button2 = UIButton() button2.frame = CGRectMake(self.view.frame.width/2 - 200, 150, 400, 50) button2.setTitle("刷新数据成中文", forState: UIControlState.Normal) button2.addTarget(self, action: "buttonAction:", forControlEvents: UIControlEvents.TouchUpInside) button2.tag = 2 // 定义一个按钮,打印当前选中的月份和星期 let button3 = UIButton() button3.frame = CGRectMake(self.view.frame.width/2 - 200, 250, 400, 50) button3.setTitle("打印当前选中的月份和星期", forState: UIControlState.Normal) button3.addTarget(self, action: "buttonAction:", forControlEvents: UIControlEvents.TouchUpInside) button3.tag = 3 // 初始化 myPickerView pickerView = UIPickerView(frame: CGRectMake(0, self.view.frame.height - 200, self.view.frame.width, 200)) pickerView.delegate = self pickerView.dataSource = self // 显示选中框,iOS7 以后不起作用 pickerView.showsSelectionIndicator = false self.view.addSubview(button1) self.view.addSubview(button2) self.view.addSubview(button3) self.view.addSubview(pickerView) } // 设置列数 func numberOfComponentsInPickerView(pickerView: UIPickerView) -> Int { return 2 } // 设置行数 func pickerView(pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int { if(component == 0){ return month.count } if(component == 1){ return week.count } return 0 } // 设置每行具体内容(titleForRow 和 viewForRow 二者实现其一即可) func pickerView(pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String! { if(component == 0){ return month[row] } if(component == 1){ return week[row] } return nil } // 选中行的操作 func pickerView(pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) { if(component == 0){ print("month selected: \(month[row])") } if(component == 1){ print("week selected: \(week[row])") } } /// 响应按钮点击事件 func buttonAction(sender: UIButton) { let num = sender.tag switch num { case 1: // 复原数据回到初始状态并重置 month = ["January","February","March","April","May","June","July","August","September","October","November","December"] week = ["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"] pickerView.reloadAllComponents() pickerView.selectRow(0, inComponent: 0, animated: true) pickerView.selectRow(0, inComponent: 1, animated: true) case 2: // 刷新数据成中文并重置 month = ["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"] week = ["星期一","星期二","星期三","星期四","星期五","星期六","星期天"] pickerView.reloadAllComponents() pickerView.selectRow(0, inComponent: 0, animated: true) pickerView.selectRow(0, inComponent: 1, animated: true) case 3: // 打印当前选中的月份和星期 let monthIndex = pickerView.selectedRowInComponent(0) let weekIndex = pickerView.selectedRowInComponent(1) print("month: \(month[monthIndex]); week: \(week[weekIndex])") default: break } } }
0 0
- iOS UIPickerView
- iOS UIPickerView
- iOS UIPickerView
- IOS UIPickerView
- IOS UIPickerView
- ios iphone 自定义UIPickerView
- iOS开发:UIPickerView控件
- IOS UIPickerView使用
- iOS开发:UIPickerView控件
- iOS编程之UIPickerView
- iOS基础 -- UIPickerView
- iOS uipickerview 选择DATE
- xamarin.ios uipickerview
- IOS UIPickerView 学习笔记
- [IOS]UIPickerView选择时间段
- iOS开发中的UIPickerView
- iOS开发UIDatePicker,UIPickerView
- iOS 三级UIPickerView使用
- ZOJ 题目3635 Cinema in Akiba(线段树插空)
- visual tracking 入门理解---by香蕉麦乐迪
- MIUI系统的一个问题
- python和php的作用域及生命周期
- Java判断两个路径对应的文件是否相同
- IOS UIPickerView
- 排序算法
- ubuntu安装搜狗输入法
- Range Sum Query - Immutable from Leetcode
- 2015.11.15_04_04_grep及正则表达式
- 【总结】软工文档
- BSP 树 和 八叉树
- Android开发必备的10 个开发工具
- leader-follower model