【问题标题】:Use iPhone clock to trigger events within app使用 iPhone 时钟触发应用内的事件
【发布时间】:2012-02-25 16:14:20
【问题描述】:

我正在创建一个应用程序,我希望在每天开始时从 .txt 调用一组新文本,目前我拥有它,以便用户可以浏览这组文件点击一个按钮,但这对于应用来说太原始​​了。

非常感谢任何有关如何访问和使用 iPhone 时钟的帮助或建议。

【问题讨论】:

    标签: iphone xcode clock


    【解决方案1】:

    此功能将为您提供 iPhone 时钟的当前时间

    [NSDate date]
    

    当应用程序打开时,您可以加载文本文件,并使用 NSUserDefaults(这是一个在应用程序实例化过程中持续存在的简单存储)存储它上次加载的日期

    下次打开应用时,从 NSUserDefaults 检索文件最后一次加载的日期,并与当前日期进行比较 - 如果超过 24 小时,则重新加载(或任何您需要的逻辑)。

    当你加载文本文件时

    // Set the current date in NSUserDefaults
    NSDate *nowDate = [NSDate date];
    [[NSUserDefaults standardUserDefaults] setObject:nowDate forKey:@"LastLoaded"];
    

    并在应用重新启动时

    // Get the current date from NSUserDefaults
    NSDate *lastLoaded = [[NSUserDefaults standardUserDefaults] objectForKey:@"LastLoaded"];
    
    
    NSDate *checkDate = [NSDate dateWithTimeIntervalSinceNow:-24*60*60];
    if ([lastLoaded compare:checkDate] == NSOrderedAscending) {
        // reload file
    }
    

    请注意,上面的代码只是为了说明问题 - 语法和日期创建比较逻辑可能存在缺陷。

    【讨论】:

    • 你能用它来调用一个函数吗?或者更确切地说,当应用程序打开时,检查它自上次运行以来已经过去了多长时间以及是否需要更新?
    • 还添加了一些示例
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-04-25
    • 1970-01-01
    • 2011-09-01
    • 2016-04-07
    • 1970-01-01
    • 2010-10-15
    • 1970-01-01
    相关资源
    最近更新 更多