UIPickerView

//遵守协议时需要把必须遵守的协议都实现了否则报红

UIPickerViewDelegate,UIPickerViewDataSource

创建PickerView

pickerView = UIPickerView()
pickerView.delegate = self
pickerView.dataSource = self
pickerView.selectRow(1, inComponent: 0, animated: true)
pickerView.selectRow(2, inComponent: 1, animated: true)
pickerView.selectRow(3, inComponent: 2, animated: true)
self.view.addSubview(pickerView)

UIPickerViewDataSource

//选择框的列数为
func numberOfComponentsInPickerView(pickerView: UIPickerView) -> Int {
    return 3
}
//选择框的行数
func pickerView(pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
    return 5
}

UIPickerViewDelegate

//设置选择框各选项显示的内容
func pickerView(pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String? {
    return String(row)+"-"+String(component)
}
//单个选择框的高度
func pickerView(pickerView: UIPickerView, rowHeightForComponent component: Int) -> CGFloat {
    return 50.0
}
//单个选择框的宽度
    func pickerView(pickerView: UIPickerView, widthForComponent component: Int) -> CGFloat {
        return self.view.frame.size.width/3
    }
//将图片作为选择框选项
    func pickerView(pickerView: UIPickerView, viewForRow row: Int, forComponent component: Int, reusingView view: UIView?) -> UIView {
        let image = UIImage(named: "\(row%2)")
        let imageView = UIImageView(image: image)
        return imageView
    }
//响应事件滑到什么位置了
func pickerView(pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
    print(row,component)
}

  

建立一个按钮,触摸按钮时获得选择框被选择的索引

let button =  UIButton(type: .Custom)
button.frame = CGRectMake(50, 200, 280, 50)
button.backgroundColor = UIColor.orangeColor()
button.setTitle("确定", forState: .Normal)
button.setTitleColor(UIColor.whiteColor(), forState: UIControlState.Normal)
button.addTarget(self, action: Selector("getPickerinfo"), forControlEvents: UIControlEvents.TouchUpInside)
self.view.addSubview(button)
//获取选择框上面的信息
func getPickerinfo(){
     let OkMessage = "\(pickerView.selectedRowInComponent(0)) and \(pickerView.selectedRowInComponent(1)) and \(pickerView.selectedRowInComponent(2))"
     print(OkMessage)
}

  

 来源: http://www.cnblogs.com/spaceID/p/4977131.html

  

转载于:https://www.cnblogs.com/spaceID/p/4977131.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值