国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統(tǒng) > iOS > 正文

IOS時(shí)間選擇框的示例代碼

2020-02-19 15:49:30
字體:
供稿:網(wǎng)友

武林小編在本文里將實(shí)例為大家介紹IOS時(shí)間選擇框的示例代碼,供大家參考,具體內(nèi)容如下

代碼:

一、頭文件

#import <UIKit/UIKit.h>@class ITTPickView;@protocol ITTPickViewDelegate <NSObject>@optional-(void)toobarDonBtnHaveClick:(ITTPickView *)pickViewresultString:(NSString *)resultString;@end@interface ITTPickView : UIView@property(nonatomic,weak) id<ITTPickViewDelegate> delegate;//委托/*** 通過時(shí)間創(chuàng)建一個(gè)DatePicker** @param date 默認(rèn)選中時(shí)間* @param isHaveNavControler是否在NavControler之內(nèi)** @return 帶有toolbar的datePicker*/-(instancetype)initDatePickWithDate:(NSDate *)defaulDatedatePickerMode:(UIDatePickerMode)datePickerModeisHaveNavControler:(BOOL)isHaveNavControler;/*** 從窗口移除本控件*/-(void)removeView;/*** 在窗口顯示本控件*/-(void)showView;@end

二、ITTPickView的實(shí)現(xiàn),主要的控件UIToolBar、UIDatePicker,點(diǎn)擊確定后執(zhí)行-(void)toobarDonBtnHaveClick:(ITTPickView *)

pickView resultString:(NSString *)resultString(因?yàn)槭强蛇x的委托事件,實(shí)現(xiàn)了才會(huì)執(zhí)行);獲得選擇的時(shí)間字符串。#import "ITTPickView.h"#define ITTToobarHeight 40@interface ITTPickView ()@property (nonatomic,assign) NSDate *defaulDate;//默認(rèn)時(shí)間@property (nonatomic,strong) UIDatePicker *datePicker;//datePicker控件@property (nonatomic,assign) NSInteger pickeviewHeight;//pickerView的高度@property (nonatomic,strong) UIToolbar *toolbar;//toolBar控件@property (nonatomic,copy) NSString *resultString;//返回的時(shí)間字符串@property (nonatomic,assign) NSInteger selfOriginy;//當(dāng)前view的frame.origin.y@property (nonatomic,assign) NSInteger selfViewInitH;//初始狀態(tài)view的frame.origin.y@end@implementation ITTPickView//初始化ITTPickView,- (instancetype)initDatePickWithDate:(NSDate *)defaulDate datePickerMode:(UIDatePickerMode)datePickerMode isHaveNavControler:(BOOL)isHaveNavControler {self = [super init];if (self) {self.defaulDate = defaulDate;[self setUpDatePickerWithdatePickerMode:datePickerMode];[self setFrameWith:isHaveNavControler];[self setUpToolBar];}return self;}//設(shè)定ITTPickView的frame大小-(void)setFrameWith:(BOOL)isHaveNavControler {CGFloat toolViewX = 0;CGFloat toolViewH = self.pickeviewHeight + ITTToobarHeight;CGFloat toolViewY;if (isHaveNavControler) {toolViewY = [UIScreen mainScreen].bounds.size.height - toolViewH - 50;}else {toolViewY = [UIScreen mainScreen].bounds.size.height - toolViewH;}CGFloat toolViewW = [UIScreen mainScreen].bounds.size.width;CGFloat toolViewInitH = [UIScreen mainScreen].bounds.size.height;self.selfViewInitH = toolViewInitH;//初始狀態(tài)view的frame.origin.yself.selfOriginy = toolViewY;//當(dāng)前view的frame.origin.yself.frame = CGRectMake(toolViewX, toolViewInitH, toolViewW, toolViewH);}//設(shè)定datePicker控件的樣式以及frame大小,并作為view的子視圖-(void)setUpDatePickerWithdatePickerMode:(UIDatePickerMode)datePickerMode {UIDatePicker *datePicker = [[UIDatePicker alloc] init];datePicker.locale = [[NSLocale alloc] initWithLocaleIdentifier:@"zh-CN"];datePicker.datePickerMode = datePickerMode;datePicker.backgroundColor = [UIColor whiteColor];if (self.defaulDate) {[datePicker setDate:self.defaulDate];}self.datePicker = datePicker;datePicker.frame = CGRectMake(0, ITTToobarHeight, [UIScreen mainScreen].bounds.size.width, datePicker.frame.size.height);self.pickeviewHeight = datePicker.frame.size.height;[self addSubview:datePicker];}//設(shè)置toolBar的各個(gè)屬性,并作為view的子視圖- (void)setUpToolBar {self.toolbar = [self setToolbarStyle];[self setToolbarWithPickViewFrame];[self addSubview:self.toolbar];}//設(shè)置toolBar的樣式-(UIToolbar *)setToolbarStyle {UIToolbar *toolbar = [[UIToolbar alloc] init];UIBarButtonItem *left = [[UIBarButtonItem alloc] initWithTitle:@" 取消 " style:UIBarButtonItemStylePlain target:self action:@selector(removeView)];UIBarButtonItem *centerSpace = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:self action:nil];UIBarButtonItem *right = [[UIBarButtonItem alloc] initWithTitle:@" 確定 " style:UIBarButtonItemStylePlain target:self action:@selector(doneClick)];toolbar.items = @[lefttem, centerSpace, right];return toolbar;}//設(shè)定tooBar的frame大小- (void)setToolbarWithPickViewFrame {self.toolbar.frame = CGRectMake(0, 0,[UIScreen mainScreen].bounds.size.width, ITTToobarHeight);}//點(diǎn)擊確定按鈕-(void)doneClick {if (self.datePicker) {NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];dateFormatter.dateFormat = @"yyyy-MM-dd";self.resultString = [dateFormatter stringFromDate:self.datePicker.date];}if ([self.delegate respondsToSelector:@selector(toobarDonBtnHaveClick:resultString:)]) {[self.delegate toobarDonBtnHaveClick:self resultString:self.resultString];}[self removeView];}/*** 從窗口移除本控件*/- (void)removeView {[UIView animateWithDuration:0.25f animations:^{self.frame = CGRectMake(self.frame.origin.x, self.selfViewInitH, self.frame.size.width, self.frame.size.height);} completion:^(BOOL finished) {if (finished) {[self removeFromSuperview];}}];}/*** 在窗口顯示本控件*/- (void)showView {[[UIApplication sharedApplication].keyWindow addSubview:self];[UIView animateWithDuration:0.25f animations:^{self.frame = CGRectMake(self.frame.origin.x, self.selfOriginy, self.frame.size.width, self.frame.size.height);} completion:^(BOOL finished) {}];}@end

三、運(yùn)用ITTPickView

UIButton *testBitton = [[UIButton alloc] initWithFrame:CGRectMake(0, 450, 111, 40)];[testBitton setBackgroundColor:[UIColor redColor]];[testBitton addTarget:self action:@selector(test) forControlEvents:UIControlEventTouchUpInside];//點(diǎn)擊按鈕彈出時(shí)間選擇框- (void)test {ITTPickView *datePicker = [[ITTPickView alloc] initDatePickWithDate:[NSDate date] datePickerMode:UIDatePickerModeDate isHaveNavControler:NO];[datePicker showView];}

以上就是IOS時(shí)間選擇框的示例代碼,如果大家想了解更多相關(guān)內(nèi)容,請(qǐng)持續(xù)關(guān)注武林技術(shù)頻道,本站小編將在第一時(shí)間為大家?guī)砀玫慕?jīng)典內(nèi)容。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 岱山县| 青海省| 翁牛特旗| 揭西县| 黄龙县| 伊春市| 宜昌市| 兴城市| 文山县| 凌源市| 沈阳市| 鄂托克前旗| 阳春市| 中西区| 平江县| 田林县| 临夏县| 镇安县| 北海市| 乐东| 建水县| 介休市| 新乡县| 达尔| 沾化县| 买车| 平阴县| 南江县| 南溪县| 内丘县| 安塞县| 同江市| 花垣县| 安阳县| 黄浦区| 彰化市| 平潭县| 古丈县| 霍林郭勒市| 兴义市| 玉门市|