1

我正在运行我的 iPod touch 应用程序,然后进入后台并从“设置”应用程序更改设备语言,并尝试将该应用程序置于前台。我的应用程序重新启动,当我进入后台时,我没有登陆我离开应用程序的屏幕。

这是因为更改语言时设置应用程序发送了 KILL 信号吗?这是期望的行为吗?

4

1 回答 1

1

我不知道切换语言会导致应用程序被终止,但这并不令人震惊。这是获得用户想要的东西的一种非常直接的方式。不过,您的问题不在于语言更改。问题是您没有正确响应终止通知。当你在后台时,你可以随时被终止,处理它是你的工作。

您的应用程序委托应该实现(或者您可以在任何方便的地方applicationWillTerminate:观察 )。UIApplicationWillTerminateNotification收到此信息后,您应该保存足够的信息,以使自己回到重新启动时的状态。您应该尽可能让用户认为您没有终止。最容易保存状态的地方通常是NSUserDefaults,但你可以使用任何你喜欢的机制。

处理应用程序重启是将优秀的 iOS 应用程序与“足够好”区分开来的事情之一。

于 2011-06-11T20:47:30.637 回答