zoukankan      html  css  js  c++  java
  • Swift

    import UIKit
    class ViewController: UIViewController,UIPickerViewDelegate,UIPickerViewDataSource {
        
        var pickerView:UIPickerView!
        
        override func viewDidLoad() {
            super.viewDidLoad()
            
            pickerView = UIPickerView()
            pickerView.dataSource = self
            pickerView.delegate = 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)
            
            
            let button = UIButton(frame: CGRect(x: 0, y: 0,  100, height: 30))
            button.center = self.view.center
            button.backgroundColor = UIColor.blue
            button.setTitle("获取信息", for:.normal)
            button.addTarget(self, action: #selector(ViewController.getPickerValue), for: .touchUpInside)
            self.view.addSubview(button)
            
            
        }
        //设置选择框的列数为3列,继承于UIPickerViewDataSource协议
        func numberOfComponents(in pickerView: UIPickerView) -> Int {
            return 3
        }
        //设置选择框的行数为9行,继承于UIPickerViewDataSource协议
        func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
            return 9
        }
       //设置选择框各选项的内容,继承于UIPickerViewDelegate协议
        func pickerView(_ pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String? {
            return String(row)+"-"+String(component)
        }
        //设置列宽
        func pickerView(_ pickerView: UIPickerView, widthForComponent component: Int) -> CGFloat {
            if component==0 {//第一列变宽
                return 80
            }else{//其他变窄
                return 50
            }
        }
        //设置行高
        func pickerView(_ pickerView: UIPickerView, rowHeightForComponent component: Int) -> CGFloat {
            return 50
        }
        //任意UIView类型的元素
        func pickerView(_ pickerView: UIPickerView, viewForRow row: Int, forComponent component: Int, reusing view: UIView?) -> UIView {
           var pickerLabel = view as? UILabel
            if pickerLabel == nil{
               pickerLabel = UILabel()
                pickerLabel?.font = UIFont.systemFont(ofSize: 13)
                pickerLabel?.textAlignment = .center
            }
            pickerLabel?.text = String(row) + "-" + String(component)
            pickerLabel?.textColor = UIColor.blue
            return pickerLabel!
            
        }
        func pickerView(_ pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
            print(component,row)
        }
        
        @objc func getPickerValue(){
         let message = String(pickerView.selectedRow(inComponent: 0))+"-"
            + String(pickerView.selectedRow(inComponent: 1))+"-"
            + String(pickerView.selectedRow(inComponent: 2))
          let alertController = UIAlertController(title: "被选中的索引为", message: message, preferredStyle: .alert)
          let okAction = UIAlertAction(title: "ok", style: .default, handler: nil)
          alertController .addAction(okAction)
            self.present(alertController, animated: true, completion: nil)
        }
    }
    
  • 相关阅读:
    tomcat 服务器发布网站
    AJAX服务器返回数据 连接数据库查询数据
    MyEclipse jsp 中文乱码
    sql 数据库修复
    jquery checkbox
    Nexus介绍
    navicat for mysql快捷键
    Mysql limit offset用法举例
    tortoiseSVN如何发现和解决冲突?
    maven指定项目的构建、打包和tomcat插件的pom.xml配置
  • 原文地址:https://www.cnblogs.com/baidaye/p/9183328.html
Copyright © 2011-2022 走看看