`
lizhuang
  • 浏览: 904288 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

iOS时间合并

 
阅读更多
合并同一时间的课程,同一时间可能有多个课程,比如13:30-14:00 13:40-14:40

//递归实现
-(void)mergeClassSchedule:(NSMutableArray*)ary
                 retArray:(NSMutableArray*)retAry
                 beginDate:(NSDate*)beginDate
                 endDate:(NSDate*)endDate
{
    NSMutableArray *groupAry=[NSMutableArray new];
    if ([ary count]>0) {
        [retAry addObject:groupAry];
    }
    while ([ary count]>0)
    {
       
        XSClassScheduleModel *classSchedulemodel=[ary objectAtIndex:0];
        if (beginDate==nil)
        {
           beginDate=[XSUtil str2DateEx:classSchedulemodel.BeginDateTimeUTC];
           endDate=[XSUtil str2DateEx:classSchedulemodel.EndDateTimeUTC];
           
           [groupAry addObject:classSchedulemodel];
           
           [ary removeObjectAtIndex:0];
        }
        else
        {
            NSDate *beginDate2=[XSUtil str2DateEx:classSchedulemodel.BeginDateTimeUTC];
            NSDate *endDate2=[XSUtil str2DateEx:classSchedulemodel.EndDateTimeUTC];
           
            if (([beginDate compare:beginDate2]==NSOrderedAscending || [beginDate compare:beginDate2]==NSOrderedSame)
                && [endDate compare:beginDate2]==NSOrderedDescending)
            {
                [groupAry addObject:classSchedulemodel];
                [ary removeObjectAtIndex:0];
                 endDate=[endDate compare:endDate2]==NSOrderedAscending?endDate2:endDate;
            }
            else
            {

                beginDate=nil;
                [self mergeClassSchedule:ary retArray:retAry beginDate:beginDate endDate:endDate];
  
            }

        }
    }
}
分享到:
评论

相关推荐

    IOS 视频录制、合并

    在iOS平台上,开发一款能够录制并合并视频的应用是一项常见的任务,尤其对于那些希望创建个性化短视频或者需要整合多段素材的用户来说。这个功能涉及到多个关键的技术点,包括视频录制、文件管理以及视频处理。以下...

    ios - 视频合并

    在iOS开发中,视频合并是一项常见的任务,尤其在制作应用如短视频编辑、视频分享或多媒体交互等场景下。本文将详细讲解如何利用苹果的AVFoundation框架来实现视频合并的功能。 首先,我们需要理解AVFoundation框架...

    ios 屏幕录制及音视频合成

    音视频合成则是将音频流与视频流合并成一个完整的多媒体文件,常用于制作多媒体内容或者教育视频。在本话题中,我们将深入探讨如何在iOS上实现这些功能,以及如何保持低内存消耗。 首先,我们来讨论iOS的屏幕录制。...

    ios视频和音频的合成

    2. AVMutableComposition:这个类是AVFoundation中的一个关键对象,允许开发者创建自定义的媒体组合,可以将多个音轨和视频轨道合并到一起。 3. AVAssetTrack:表示媒体资源的单一轨道,如音频或视频。在合成过程中...

    东北大学ios大作业

    9. **版本控制**:对于团队项目,开发者可能使用Git进行版本控制,协同开发,提交代码,并解决合并冲突。 10. **App Store发布**:最后,完成的项目需要符合Apple的App Store指南,通过Xcode进行打包和提交,以便...

    ios 视频分割编辑

    在iOS平台上进行视频编辑,尤其是视频的分割、合并和剪辑,是一项常见的任务,尤其对于开发者来说,了解这些技能是至关重要的。在这个过程中,我们通常会利用强大的多媒体处理库,如FFmpeg。本文将深入探讨如何在iOS...

    iOS 12.3真机包

    其次,iOS 12.3对Siri进行了升级,增加了对更多类型问题的回答能力,如体育赛事结果、比分预测和比赛时间等。此外,Siri的建议功能也得到了改进,可以根据用户的日常使用习惯提供更相关的建议。通过Siri Shortcuts,...

    几个IOS小工具

    通过减少纹理切换,它能够减少加载时间和内存消耗,尤其适用于2D游戏中的精灵动画。Zwoptex还提供了XML或JSON格式的输出,方便在游戏中读取和使用这些图集。 2. **CocosBuilder**: CocosBuilder是另一款iOS开发工具...

    ios-ios代码自动化工具.zip

    通过自动化这些流程,开发者可以节省大量手动操作的时间,确保构建过程的一致性和可靠性。 2. **Services**: 文件夹中的"Services"可能包含了自定义的服务或者服务脚本,这些服务可能用于集成第三方API、数据同步...

    iOS git 配置文件

    Git默认并不适合管理这些大文件,因为它们会显著增加仓库的大小并延长提交和克隆的时间。为了解决这个问题,我们可以使用Git Large File Storage (LFS)。LFS是一种扩展,它将大文件替换为指向存储在远程服务器上的...

    ios应用源码之自定义的马赛克时间风格 20181210

    本文将深入探讨如何在iOS应用中实现一种自定义的马赛克时间风格,以20181210为背景,主要涉及的知识点包括Objective-C编程语言、UIKit框架、Core Graphics以及时间格式化。 首先,马赛克效果通常是通过图像处理技术...

    ios-iOS时间总线框架:SwiftyEventBus.zip

    SwiftyEventBus是专门为iOS平台打造的一个Swift实现的轻量级、无依赖的时间总线框架,它支持RxSwift扩展,为开发者提供了更灵活的异步事件处理能力。 SwiftyEventBus的核心概念是发布/订阅(Publish/Subscribe)...

    iOS9 By Tutorials.zip

    8. **App Thinning**:为了减少应用下载和安装的时间,iOS9引入了App Thinning技术,根据用户的设备型号和系统版本,只下载必要的资源和代码。 9. **NSUserActivity和Continuity**:iOS9增强了连续性功能,通过...

    iOS常用算法之两个有序数组合并(要求时间复杂度为0(n))

    总之,本文详细介绍了如何在iOS开发中实现两个有序数组的合并,提供了一个简单的O(n)时间复杂度的解决方案。通过这个例子,开发者可以学习到如何有效地处理数据,提高代码的执行效率。同时,不断学习和实践这样的...

    IOS开发 视频合成

    在iOS开发中,视频合成是一项重要的技术,它允许开发者将多个视频片段合并成一个单一的视频文件,同时可能还需要处理如叠加图像、文字等元素。本教程将详细讲解如何在iOS应用中实现视频合成,主要关注苹果的...

    iOS核心动画

    9. 减少图层数量(Reduce Layer Count):为了提升性能,应尽量减少图层数量,这可能涉及到图层合并或者使用离屏渲染等技术。 在学习和应用iOS核心动画时,开发者需要关注CALayer类的使用,了解如何通过属性和方法...

    IOS 基本动画(旋转、移动、闪烁、缩放等)

    也可以利用`CAAnimationGroup`来将多个Core Animation动画合并为一个组。 ### 动画的交互性 为了使动画更具交互性,可以使用`UIView.animate(withDuration:animations:completion:)`的`completion`参数来处理动画...

    Buck在大规模iOS开发中的应用实践

    此外,文档中也提及了Airbnb在使用Buck的过程中的一些实际统计数据,例如每天合并到主分支的提交数量、每周的构建次数,以及最近一个月的iOS贡献者数量,这些数据进一步印证了Buck在大规模iOS开发中的有效性和可扩展...

    ios核心动画高级技巧

    理解图层树的渲染规则,以及如何利用图层树进行性能优化,例如通过设置compositingFilter进行像素合并。 8. **离屏渲染**:离屏渲染虽然可以实现某些高级效果,但也会带来性能开销。识别并避免不必要的离屏渲染是...

Global site tag (gtag.js) - Google Analytics