美文网首页iOS开发知识小集Demo控件
iOS开发中创建周历选择器

iOS开发中创建周历选择器

作者: 梁森的简书 | 来源:发表于2019-08-26 16:21 被阅读0次

    先看效果图:

    0.周历.png

    我们要解决的问题:某年的某个月显示哪几个周?

    我们使用一个UIPickerView创建自定义的周历选择器,数据源来自三个数组:1.装年的数组 2.装月的数组 3.装周的数组。
    前两个数据源比较好获取,想要显示多少年就把我们需要的年放入到数组中即可,装月的数组更好获取,直接在数组中放入12个月即可,比较难获取的就是装周的数组。
    要获取装周的数组中的数据,首先我们需要确定哪一年、那一月,在确定了年、月之后我们才能确定周。
    确定某年的某个月:

      _selectedMonth = [NSDate dateWithYear:[_years[_yearRow] integerValue] Month:[_month[_monthRow] integerValue] Day:1];
    

    在确定了某年某月之后我们可以获取到这个月一共有多少个周。
    方法:

       [_selectedMonth numberOfWeeksInCurrentMonth];
    

    这个方法是NSDate的一个分类中的方法。
    我们可以遍历获取的到周,从第一周到最后一周,我们可以获取每一周的第一天和最后一天。
    方法:

      weekFirstDate = [_selectedMonth beginDateByWeekLevel:i];
        weekEndDate = [_selectedMonth endDateByWeekLevel:i];
      [self.weekdays addObject:@[weekFirstDate,weekEndDate]];
    

    该方法同样也是NSDate的一个分类中的方法,这样我们就能获取到第三个数组中的数据了。

    确定某年某月、某月有多少周、每个周的第一天和最后一天的方法我们都可以通过NSDate的一个分类中的方法轻松获取,下面是一个别人写的demo,里面包含了NSDate的分类,大家可以下载下来看看。

    demo地址:***https://gitee.com/liangsenliangsen/week_selector.git

    本篇文章到这里就结束了,愿大家加班不多工资多,男同胞都有女朋友,女同胞都有男朋友。😊

    相关文章

      网友评论

        本文标题:iOS开发中创建周历选择器

        本文链接:https://www.haomeiwen.com/subject/wqdrectx.html