Swift开发程序员iOS移动开发社区

Swift - 日历签到

2016-06-27  本文已影响532人  LitterL

说明:

最近在项目中,需要添加一个日历签到的功能,在网上找了很久都没有找到合适的,又加上项目为Swift编写,所以硬生生的找了好几个小时,还是没有找到,然后不得已自己写了一个简易的Demo当然也引用了一些大牛的代码,望能帮助有与我相同疑惑的码友,我这里就不作简单的介绍了,上图为例:(这里我是传入的相同数据,以坐标为准,所以您看到的每一个月都是相同的地方)

Calendar.gif

代码

这里的话我就不给大家讲详细的实现步骤了,代码之后会上传,并且注释都会详细记载。

    private let navigationBar = UIView()       //主要标题栏
    private let weekHeaderView = UIView()      //星期标题栏
    private let contentWrapperView = UIView()  //日历内容栏
    /**
     布局三大控件
     */
    private func commonInit(){
        //添加导航栏
        navigationBar.frame = CGRectMake(0, 0, self.frame.width, 40)
        self.addSubview(navigationBar)
        CreateNavigationBar()

        //添加星期标题栏
        weekHeaderView.frame = CGRectMake(10, CGRectGetMaxY(navigationBar.frame), self.frame.width - 20, 20)
        self.addSubview(weekHeaderView)
        CreateWeekHeaderView()

        //添加日历内容栏
        contentWrapperView.frame = CGRectMake(10,CGRectGetMaxY(weekHeaderView.frame),self.frame.width - 20 ,self.frame.height - CGRectGetMaxY(weekHeaderView.frame))
        self.addSubview(contentWrapperView)
        CreatecontentWrapperView(Nowdate)
    }

//MARK: - 定义一份协议
protocol CalendarDelegate{
    /**
     协议
     */
    func CalendarNavClickView(calendar:CalendarView,year:Int,month:Int)
}

//        calendar.weekdayHeaderTextColor = UIColor.redColor()            //周一到周五的颜色
//        calendar.weekdayHeaderWeekendTextColor = UIColor.blueColor()    //周六和周日的颜色
//        calendar.componentTextColor = UIColor.redColor()                //月份字体的颜色
//        calendar.todayIndicatorColor = UIColor.yellowColor()            //今日的背景色
//        calendar.highlightedComponentTextColor                          //点击之后前景颜色
//        calendar.selectedIndicatorColor = UIColor.orangeColor()         //点击的背景色
//        calendar.SigninList = signinList            //默认签到的坐标

其实用起来就是这样的简单Demo地址

                 本章到此结束
            欢迎各位码友随意转载并指正
上一篇 下一篇

猜你喜欢

热点阅读