日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

ios自定义日期、时间、城市选择器

發(fā)布時間:2025/4/5 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ios自定义日期、时间、城市选择器 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

選擇器,我想大家都不陌生,當需要用戶去選擇某些范圍值內(nèi)的一個固定值時,我們會采用選擇器的方式。選擇器可以直觀的提示用戶選擇的值范圍、統(tǒng)一信息的填寫格式,同時也方便用戶快速的進行選擇,比如對于性別,正常情況下就只有男女兩種情況,那這時候用一個選擇器給用戶進行選擇的話,可以避免錯誤數(shù)據(jù)的輸入,也更方便用戶去填寫。再比如需要獲取用戶的生日信息時,采用選擇器的方式可以統(tǒng)一生日的格式,如果讓用戶自行輸入的話,可能會出現(xiàn)各種各樣的生日信息格式,不利于數(shù)據(jù)的存儲,但是采用選擇器的方式的話,用戶可找到對應(yīng)的日期進行選擇即可。

在iOS有專門的一個選擇器類UIPickerView,進入UIPickerView的頭文件,我們可以發(fā)現(xiàn) UIPickerView直接繼承了UIView,其事件處理通過代理方法完成,所以創(chuàng)建UIPickerView的時候記得簽它的代理UIPickerViewDataSource和UIPickerViewDelegate。其實它和UITbleView有點像,不過UIPickerView還多了個列屬性,UITbleView我們都很熟了,所以可以對比UITbleView的相關(guān)屬性和代理方法來學習記憶UIPickerView。

一. UIPickerView的代理方法
(1)UIPickerViewDataSource對應(yīng)的代理方法有(其代理方法必須要實現(xiàn)):

返回顯示的列數(shù)
- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView;

返回每一列中需要顯示的行數(shù)
- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component;

(2)UIPickerViewDelegate對應(yīng)的代理方法(其代理方法根據(jù)需求進行選擇性實現(xiàn)):

返回每一列的寬度
- (CGFloat)pickerView:(UIPickerView *)pickerView widthForComponent:(NSInteger)component;

返回每一列的高度
- (CGFloat)pickerView:(UIPickerView *)pickerView rowHeightForComponent:(NSInteger)component ;

返回UIPickerView控件中指定列的列表項的要顯示的內(nèi)容
- (nullable NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component ;

返回UIView,作為該UIPickerView控件中指定列的指定行的顯示視圖
- (UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(nullable UIView *)view ;

選擇指定列中的指定行
- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component ;

二、UIPickerView和UIDatePicker。
UIDatePicker是系統(tǒng)幫我們封裝好的一個時間日期選擇器,繼承于UIControl,UIDatePicker有一定的局限性,因為它只有四種顯示樣式:

UIDatePickerModeTime,
UIDatePickerModeDate,
UIDatePickerModeDateAndTime,
UIDatePickerModeCountDownTimer,
1
2
3
4
如果需求和這四種樣式都不符合的話,那么就沒辦法使用UIDatePicker,比如當只需要顯示年、月信息的時候,顯然UIDatePicker沒辦法滿足我們的需求,那這時我們只能通過UIPickerView來自定義自己想要的選擇器。

三、UIPickerView的自定義使用
(1)創(chuàng)建基類繼承于UIView的WXZBasePickView。
我們常見的選擇器的樣式是一個帶透明背景色的view,底部是內(nèi)容的選擇器,有確定和取消按鈕,大致如圖:

?



有需要的下載demo? https://github.com/wxzwork/CustomPickView

轉(zhuǎn)載于:https://www.cnblogs.com/soulDn/p/9967396.html

總結(jié)

以上是生活随笔為你收集整理的ios自定义日期、时间、城市选择器的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。