• iOS


    前言

    	NS_CLASS_AVAILABLE_IOS(2_0) __TVOS_PROHIBITED @interface UIDatePicker : UIControl <NSCoding>
    	@available(iOS 2.0, *)						   public class UIDatePicker : UIControl, NSCoding
    
    • UIDatePicker 是 UIKit 控件中提供日期和时间选择的控件。

    1、DatePicker 的创建

    • Objective-C

      	// 不设置 frame 时为系统默认大小
      	UIDatePicker *datePicker = [[UIDatePicker alloc] init];
      	
      	// 将 datePicker 添加到屏幕上
      	[self.view addSubview:datePicker];
      
    • Swift

      	// 不设置 frame 时为系统默认大小
      	let datePicker:UIDatePicker = UIDatePicker()
      	
      	// 将 datePicker 添加到屏幕上
      	self.view.addSubview(datePicker)
      

    2、DatePicker 的设置

    • Objective-C

      	// 设置 frame
      	/*
      		不设置 frame 时为系统默认大小
      	*/
      	datePicker.frame = CGRectMake(50, 100, self.view.bounds.size.width - 100, 300);
      	
      	// 设置位置
      	datePicker.center = self.view.center;
      	    
      	// 设置显示模式
      	/*
      		UIDatePickerModeTime,            // 仅显示时间,不显示日期
      		UIDatePickerModeDate,            // 仅显示日期,不显示时间
      		UIDatePickerModeDateAndTime,     // 同时显示日期和时间,默认
      		UIDatePickerModeCountDownTimer,  // 显示为倒计时状态
      	*/
      	datePicker.datePickerMode = UIDatePickerModeDateAndTime;
      	    
      	// 设置本地化信息
      	/*
      		default is [NSLocale currentLocale]. setting nil returns to default
      	*/
      	datePicker.locale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US"];
      	    
      	// 设置时区
      	/*
      		default is nil. use current time zone or time zone from calendar
      	*/
      	datePicker.timeZone = [NSTimeZone systemTimeZone];
      	    
      	// 设置日历
      	/*
      		default is [NSCalendar currentCalendar]. setting nil returns to default
      	*/
      	datePicker.calendar = [NSCalendar currentCalendar];
      	    
      	// 设置时间
      	/*
      		default is current date when picker created.
      	*/
      	datePicker.date = [NSDate date];
      	[datePicker setDate:[NSDate dateWithTimeIntervalSinceNow:60*60*26] animated:YES];
      	    
      	// 设置最小的时间
      	/*
      		default is nil
      	*/
      	datePicker.minimumDate = [NSDate dateWithTimeIntervalSince1970:0];
      	    
      	// 设置最大时间
      	/*
      		default is nil
      	*/
      	datePicker.maximumDate = [NSDate dateWithTimeIntervalSinceNow:60*60*24*7];
      	    
      	// 设置可以调整的最小时间间隔(分钟)
      	/*
      		interval must be evenly divided into 60. default is 1. min is 1, max is 30
      	*/
      	datePicker.minuteInterval = 2;
      	    
      	// 设置倒计时时间值(秒)
      	/*
      		default is 0.0. limit is 23:59 (86,399 seconds)。必须为 60 的整数倍,比如设置为 100,值自动变为 60
      	*/
      	datePicker.countDownDuration = 60*60;
      	    
      	// 添加点击触发事件
      	[datePicker addTarget:self action:@selector(datePickerChanged:) forControlEvents:UIControlEventValueChanged];
      
    • Swift

      	// 设置 frame
      	/*
      		不设置 frame 时为系统默认大小
      	*/
      	datePicker.frame = CGRectMake(50, 100, self.view.bounds.size.width - 100, 300)
      	    
      	// 设置位置
      	datePicker.center = self.view.center
      	    
      	// 设置显示模式
      	/*
      		case Time             // 仅显示时间,不显示日期
      		case Date             // 仅显示日期,不显示时间
      		case DateAndTime      // 同时显示日期和时间,默认
      		case CountDownTimer   // 显示为倒计时状态
      	*/
      	datePicker.datePickerMode = .DateAndTime
      	    
      	// 设置本地化信息
      	/*
      		default is [NSLocale currentLocale]. setting nil returns to default
      	*/
      	datePicker.locale = NSLocale(localeIdentifier: "en_US")
      	    
      	// 设置时区
      	/*
      		default is nil. use current time zone or time zone from calendar
      	*/
      	datePicker.timeZone = NSTimeZone.systemTimeZone()
      	    
      	// 设置日历
      	/*
      		default is [NSCalendar currentCalendar]. setting nil returns to default
      	*/
      	datePicker.calendar = NSCalendar.currentCalendar()
      	    
      	// 设置时间
      	/*
      		default is current date when picker created
      	*/
      	datePicker.date = NSDate()
      	datePicker.setDate(NSDate(timeIntervalSinceNow: 60*60*26), animated: true)
      	    
      	// 设置最小的时间
      	/*
      		default is nil
      	*/
      	datePicker.minimumDate = NSDate(timeIntervalSince1970: 0)
      	    
      	// 设置最大时间
      	/*
      		default is nil
      	*/
      	datePicker.maximumDate = NSDate(timeIntervalSinceNow: 60*60*24*7)
      	    
      	// 设置可以调整的最小时间间隔(分钟)
      	/*
      		interval must be evenly divided into 60. default is 1. min is 1, max is 30
      	*/
      	datePicker.minuteInterval = 2
      	    
      	// 设置倒计时时间值(秒)
      	/*
      		default is 0.0. limit is 23:59 (86,399 seconds)。必须为 60 的整数倍,比如设置为 100,值自动变为 60
      	*/
      	datePicker.countDownDuration = 60*60
      	    
      	// 添加点击触发事件
      	datePicker.addTarget(self, action: #selector(UiDatePicker.datePickerChanged(_:)), forControlEvents: .ValueChanged)
      
  • 相关阅读:
    RN常用布局和CSS
    RN常用组件
    海屯天地技术服务支持
    微前端应用解决方案
    React组件复用方式
    Webpack-CodeSplit(按需加载)
    Webpack-CodeSplit(静态文件篇)
    Webpack抽离第三方类库以及common解决方案
    Javascript十六种常用设计模式
    React hooks详解
  • 原文地址:https://www.cnblogs.com/QianChia/p/5755252.html
Copyright © 2020-2023  润新知