中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

iOS自定義日期demo分享

發布時間:2020-08-19 16:54:19 來源:腳本之家 閱讀:131 作者:洛洛愛吃肉 欄目:移動開發

有個項目需求是做個在日期上選擇的,就是這種:

iOS自定義日期demo分享

網上看了幾個日期的demo都太厚重了,移植起來太麻煩,然后打算自己寫。

就先寫個簡化的demo看看,主要有幾個關鍵點:

  • 首先要根據當前日期獲取這個月有幾天
  • 然后判斷這個月份第一天是周幾
  • 再根據上面兩個數據在合理的位置顯示數據
  • 還要記錄下當前的日期方便切換月份
  • 如果調接口的話其實根據后臺給數據比對下對應的日期展示數據即可

其中有一個容易迷糊的是獲取的星期天是第一天,下標是1

所以我們的數組是這樣的

_weekdays = [NSArray arrayWithObjects: [NSNull null],@"星期日", @"周一", @"周二", @"周三", @"周四", @"周五", @"周六", nil];
好吧,看下寫出來的效果:

iOS自定義日期demo分享

總的來說沒什么難度,就是要熟悉下關于日期的api.

 //3.獲取這個月總天數,填充數據源
 NSRange range = [calendar rangeOfUnit:NSCalendarUnitDay inUnit:NSCalendarUnitMonth forDate:self.currentDate];
 NSUInteger numberOfDaysInMonth = range.length;
 NSLog(@"%lu", (unsigned long)numberOfDaysInMonth);
 
 //4.獲取這個月的第一天為周幾
 NSCalendar *cal = [NSCalendar currentCalendar];
 NSDateComponents *comps = [cal
    components:NSCalendarUnitYear | NSCalendarUnitMonth
    fromDate:self.currentDate];
 lastMonthComps.day = 1;
 NSDate *firstDay = [cal dateFromComponents:comps];
 NSCalendarUnit calendarUnit = NSCalendarUnitWeekday;
 NSDateComponents *firsComponents = [cal components:calendarUnit fromDate:firstDay];
 
 NSLog(@"%@", [_weekdays objectAtIndex:firsComponents.weekday]);


demo完整代碼

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

临沂市| 大港区| 旅游| 双城市| 中牟县| 清镇市| 肃宁县| 亚东县| 芒康县| 西华县| 平凉市| 根河市| 普洱| 南京市| 荆州市| 富蕴县| 武穴市| 山丹县| 和田市| 格尔木市| 灵宝市| 仁化县| 丹寨县| 桑日县| 崇左市| 清镇市| 井冈山市| 舞阳县| 霍邱县| 曲阳县| 中西区| 嘉义县| 宁乡县| 沽源县| 渝北区| 永嘉县| 静宁县| 呼玛县| 沙坪坝区| 库伦旗| 汉寿县|