2016-12-30 16 views
0

アプリケーションがバックグラウンドになり、モバイルの時刻や日付などの何らかのアクティビティがフォアグラウンド(アプリケーションアクティブモード)になったときにメソッドを呼び出す方法。アプリケーションがバックグラウンドになり、フォアグラウンドになるとUIViewControllerメソッドを呼び出します。

それから私はのUIViewControllerクラス

FirstViewControllerクラスメソッドのメソッドを呼び出したいです。

-(void)refreshItems{ 
// Your item refresh code. 
} 

答えて

0

チェックこのコードで

func applicationDidEnterBackground(_ application: UIApplication) { 
    if let appDelegate = UIApplication.shared.delegate as? AppDelegate, 
     let controller = appDelegate.window?.rootViewController as? FirstViewController { 
     controller.refreshItems() 
    } 
} 

func applicationWillEnterForeground(_ application: UIApplication) { 
    if let appDelegate = UIApplication.shared.delegate as? AppDelegate, 
     let controller = appDelegate.window?.rootViewController as? FirstViewController { 
     controller.refreshItems() 
    } 
} 

(FirstViewControllerが他のウィンドウのrootViewControllerがnullをAppDelegateにFirstViewControllerのインスタンスを取り、確認している場合)のObjective-C

- (void)applicationDidEnterBackground:(UIApplication *)application { 
    AppDelegate *appDelegate = (AppDelegate*)[UIApplication sharedApplication].delegate; 
    FirstViewController *controller = (FirstViewController*)[[appDelegate window] rootViewController]; 
    [controller refreshItems]; 
} 


- (void)applicationWillEnterForeground:(UIApplication *)application { 
    AppDelegate *appDelegate = (AppDelegate*)[UIApplication sharedApplication].delegate; 
    FirstViewController *controller = (FirstViewController*)[[appDelegate window] rootViewController]; 
    [controller refreshItems]; 
} 
+0

私はObjective - Cで必要です – kiran

1

私はあなただけで必要な推測します

[[NSNotificationCenter defaultCenter] addObserver:self selector: @セレクタ(refreshItems)の名前:UIApplicationDidBecomeActiveNotificationオブジェクト:なし];

0
you have set notification in appDelegate class 

    - (void)applicationWillEnterForeground:(UIApplication *)application { 

     [[NSNotificationCenter defaultCenter] postNotificationName:@"forground"  object:nil]; 

    } 

and add observer to your viewcontroller class viewdidload() methos 

    [[NSNotificationCenter defaultCenter] addObserver:self 
               selector:@selector(showMainMenu:) 
                name:@"refreshItems" object:nil]; 
関連する問題