swift中用UIAlertController包装一个UIdatePicker

来源:互联网 发布:虚拟机ubuntu如何分区 编辑:程序博客网 时间:2024/06/09 11:50
 let allertController = UIAlertController.init(title: "\n\n\n\n\n\n\n\n\n\n\n\n", message: nil, preferredStyle: .ActionSheet) //此处\n是为了给date picker留出位置                let datePicker = UIDatePicker()                datePicker.mj_x = 20                //这里偏移量最好精确计算,我这里简单设置下,让picker尽量显示在中间                datePicker.datePickerMode = UIDatePickerMode.Time                //设置显示模式                let dateSetted = NSUserDefaults.standardUserDefaults().valueForKey("VerseOfTheDayAlarm")                //从沙盒中获取之前存储的时间  key自己定义                if dateSetted == nil{                    datePicker.date = NSDate(timeIntervalSince1970: 1473418800)                    //此处默认设置时间为早上8点,时间戳相关转换请自己百度                }else{                    let dateFormatter = NSDateFormatter()                    dateFormatter.dateFormat = "HH:mm"                    //时间格式                    let dateSettedDate = dateFormatter.dateFromString(dateSetted as! String)                    //字符串转nsdate                    datePicker.date = NSDate(fromDate: dateSettedDate!)    //设置时间                }                datePicker.addTarget(self, action: #selector(MoreViewController.datePickerValueChange(_:)), forControlEvents: UIControlEvents.ValueChanged)        //设置点击反馈                        allertController.addAction(UIAlertAction(title: "SetTime", style: .Default, handler :nil))                        //设置名称                self.presentViewController(allertController, animated: true, completion: nil)                allertController.view.addSubview(datePicker) func datePickerValueChange(sender:UIDatePicker){        let dateFormatter = NSDateFormatter()        dateFormatter.dateFormat = "HH:mm"        let sourceTimeZone = NSTimeZone.systemTimeZone()        dateFormatter.timeZone = sourceTimeZone        let date = dateFormatter.stringFromDate(sender.date)        }
0 0