UI didEnterRegion 更新了吗?

UI update in didEnterRegion?

我正在制作一个应用程序,该应用程序使用 CLLocationManager 来使用地理围栏。我已经实现了这两种方法,它们都得到了适当的调用:

- (void)locationManager:(CLLocationManager *)manager didEnterRegion:(CLRegion *)region
{
    [self updateUI]; // update the UI
}

- (void)locationManager:(CLLocationManager *)manager didExitRegion:(CLRegion *)region
{
    [self updateUI]; // update the UI
}

我正在使用一个名为 updateUI 的方法进行一组 UI 更新,如下所示:

- (void)updateUI
{
    // Update labels, constraints, alphas and similar
}

updateUI 在 didEnterRegion 和 didExitRegion 中被调用,但这引发了一些问题:

谢谢!

埃里克

如果通知到达时您的应用程序不在前台,则它不会被置于前台。因此,此时对接口做任何事情都没有什么意义,因为实际上没有接口。只需以某种方式处理通知——即记下发生的事情——然后停止。此时你的工作是尽快离开那里,让应用程序重新进入休眠状态。下次您的应用程序出现在前面(变为活动状态)时,您会收到 that 的通知,并且 now 您可以制作界面匹配数据。