【问题标题】:how to save current state of application如何保存应用程序的当前状态
【发布时间】:2010-04-24 08:04:32
【问题描述】:

我正在制作一个 iphone 应用程序,登录后我们将执行一些步骤,最后我们从应用程序内拨打电话。正如我们在拨打电话时所知道的那样,我们的应用程序退出了,所以请建议我如何在重新启动应用程序时恢复该状态?
1-登录
2-一些步骤
3-数字列表
4-call

任何帮助将不胜感激。 谢谢..

【问题讨论】:

    标签: iphone call savestate


    【解决方案1】:

    保存

    NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];
    

    // 保存一个 NSString

    [prefs setObject:@"TextToSave" forKey:@"keyToLookupString"];
    

    // 保存一个 NSInteger

    [prefs setInteger:42 forKey:@"integerKey"];
    

    // 保存一个 Double

    [prefs setDouble:3.1415 forKey:@"doubleKey"];
    

    // 保存浮点数

    [prefs setFloat:1.2345678 forKey:@"floatKey"];
    
    [prefs synchronize];
    

    检索

    NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];
    

    // 获取一个 NSString

    NSString *myString = [prefs stringForKey:@"keyToLookupString"];
    

    // 获取一个 NSInteger

    NSInteger myInt = [prefs integerForKey:@"integerKey"];
    

    // 得到一个浮点数

    float myFloat = [prefs floatForKey:@"floatKey"];
    

    【讨论】:

      【解决方案2】:

      Apple 发布了一份文档,其中包含关于您应该如何处理 iphone 应用程序中的保存状态的非常明确的指南。所有 iphone 应用程序都应该足够健壮,可以随时处理来自来电或其他事件的中断,并保存它们的状态,以便优雅地退出并允许用户稍后恢复。

      当您的应用程序从系统接收到关闭事件时,您必须将一些值写入磁盘(登录信息、当前页面、页面状态等)。

      然后,每当您启动应用程序时,您要做的第一件事就是检查是否存在包含这些设置的文件。

      您是否阅读过 iphone 应用程序设计指南或任何有关 iphone SDK 的文档?任何可用的 iphone SDK 编程书籍都详细介绍了这个主题。

      【讨论】:

      • 您有指定这些指南的确切链接吗?
      【解决方案3】:

      一般来说,NSUserDefaults 对于这类事情非常有用——作为一个非常基本的示例,您可以保存一个int,它记录了应用程序退出时的状态。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-06-11
        • 1970-01-01
        • 2013-05-11
        • 2015-10-24
        • 2014-10-28
        • 1970-01-01
        相关资源
        最近更新 更多