欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

iOS自定義日期demo分享

有個(gè)項(xiàng)目需求是做個(gè)在日期上選擇的,就是這種:

站在用戶的角度思考問題,與客戶深入溝通,找到鐵西網(wǎng)站設(shè)計(jì)與鐵西網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類型包括:網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、國際域名空間、虛擬主機(jī)、企業(yè)郵箱。業(yè)務(wù)覆蓋鐵西地區(qū)。

iOS自定義日期demo分享

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

就先寫個(gè)簡化的demo看看,主要有幾個(gè)關(guān)鍵點(diǎn):

  • 首先要根據(jù)當(dāng)前日期獲取這個(gè)月有幾天
  • 然后判斷這個(gè)月份第一天是周幾
  • 再根據(jù)上面兩個(gè)數(shù)據(jù)在合理的位置顯示數(shù)據(jù)
  • 還要記錄下當(dāng)前的日期方便切換月份
  • 如果調(diào)接口的話其實(shí)根據(jù)后臺(tái)給數(shù)據(jù)比對(duì)下對(duì)應(yīng)的日期展示數(shù)據(jù)即可

其中有一個(gè)容易迷糊的是獲取的星期天是第一天,下標(biāo)是1

所以我們的數(shù)組是這樣的

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

iOS自定義日期demo分享

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

 //3.獲取這個(gè)月總天數(shù),填充數(shù)據(jù)源
 NSRange range = [calendar rangeOfUnit:NSCalendarUnitDay inUnit:NSCalendarUnitMonth forDate:self.currentDate];
 NSUInteger numberOfDaysInMonth = range.length;
 NSLog(@"%lu", (unsigned long)numberOfDaysInMonth);
 
 //4.獲取這個(gè)月的第一天為周幾
 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完整代碼

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。

網(wǎng)頁題目:iOS自定義日期demo分享
路徑分享:http://chinadenli.net/article22/ggppjc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作域名注冊(cè)企業(yè)建站關(guān)鍵詞優(yōu)化網(wǎng)站內(nèi)鏈

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都做網(wǎng)站