当应用程序变得活跃时重新加载数据



当应用程序变为活动或前台时如何重新加载所有数据?在iOS上是这样的:

[[NSNotificationCenter defaultCenter]addObserver:self
                                            selector:@selector(viewDidLoad)
                                            name:UIApplicationDidBecomeActiveNotification
                                            object:nil];

1)在Android中,你还不能清楚地知道什么时候应用程序作为一个整体是前景。不过也有一些不错的hack。看看这个Stack Overflow的答案。但是要注意,你应该使用onStart和onStop,而不是像答案指定的那样使用onResume和onPause。

https://stackoverflow.com/a/15573121/2293095

2)你可以告诉虽然当一个特定的活动(通常是一个单一的页面在应用程序)是在前台。我认为,通过重新加载数据,您的意思是希望从本地数据库重新加载数据或从服务器获取数据。在任何一种情况下,你都可以通过重写Activity的onResume()方法来做到这一点,就像这样。

@Override
public void onResume(){
    //generic function that will query or get from server
    reloadData(); 
    //make sure to refresh your view. Ex: ImageView
    imageView.invalidate();
}