当应用程序激活时,我正在使用UIApplicationDidBecomeActiveNotification刷新我的表视图。我的问题是,在我的ViewWillAppear中,我还调用了一个方法来刷新这个表的数据。
这会导致表在应用程序启动时刷新两次。我怎样才能让其中的一个在应用程序最初启动时不被触发?刷新表需要对网络和本地数据进行密集的处理。所以我真的希望这个动作只执行一次。
谢谢。
发布于 2012-02-06 00:39:28
一种方法是使用一个标志,你可以在didFinishLaunching中设置,因为每次启动只执行一次。
发布于 2014-01-14 15:44:08
您需要使用UIApplicationWillEnterForegroundNotification而不是UIApplicationDidBecomeActiveNotification。
后者会在你的应用程序每次激活时发布(初始启动,调用/短信中断后返回应用程序,等等)。但前者仅在从后台唤醒的情况下发布。请注意,在这种情况下,不会调用viewWillAppear (乍一看应该是这样)。
https://stackoverflow.com/questions/9150915
复制相似问题