2012-03-02 19 views
-2

実際には、アプリがバックグラウンドから来たときにデータをリロードすることが条件です。私はバックグラウンドから来たときにリロードしません。私はviewDidLoadにデータをリロードするためのメソッドを記述します。アプリがバックグラウンドから来たときにデータがリロードされない

私の問題を解決するためのコードはどこに書きますか?

おかげで...

+0

[この](http://stackoverflow.com/q/8548555/971401)はあなたを助けるかもしれない動作しますファイルのApp委任でそれを試してみてくださいしてみてください。 –

+0

@rohanあなたのコードを表示しようとしましたが、メソッドが表示されますか? – Kartik

+0

@KartikArora:私は背景から来たときに私のviewWillAppearメソッド呼び出しを行いますか? – Rohan

答えて

1
-(void) viewDidLoad { 

[super viewDidLoad]; 
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(myMethod:) name: UIApplicationWillEnterForegroundNotification object:nil]; 
} 

-(void)myMethod:(id)not { 
// code for save data 
} 

この

+0

@lgor - 回答ありがとうございます。私はあなたのコードを試しました。しかし、問題は、バックグラウンドでアプリを実行するときに起動時からアプリを起動することです。背景アプリではありません。:( – Rohan

+0

https://developer.apple.com/library/ios/#DOCUMENTATION/UIKit/Reference/ UIApplication_Class /リファレンス/のreference.htmlここで私はあなたが返信用UIApplicationDidBecomeActiveNotification –

+1

またはUIApplicationWillEnterForegroundNotification –

0

あなたはUIApplicationDelegate

- (void)applicationDidBecomeActive:(UIApplication *)application 

方法、またはあなたUIApplicationDidBecomeActiveNotificationにあなたのオブジェクトをサブスクライブでそれを行うのどちらか。

+0

Aligner - 返信ありがとうございます。しかし、私は私が試してみると、viewControllerのメソッドを表示しないので、私は私のviewControllerのretriveDataメソッドをAppDelegateの - (void)applicationDidBecomeActive:(UIApplication *)アプリケーションメソッドを使用する方法を知りたいですか? – Rohan

2

KartikAroraは上記のように、アプリがバックグラウンドからフォアグラウンドに来たときにviewDidLoadは呼び出されません。したがって、データは再ロードされません。

ビューが読み込まれる代わりにビューが表示されるたびに、データをリロードすることができます。しかし、ビューが表示されるたびにデータがリロードされます。

投稿された通知によってトリガされたフォアグラウンドにアプリが入ると呼び出されるリロードメソッドをビューコントローラに追加することもできます。

1

はそれが

- (void) applicationWillEnterForeground: (UIApplication *) application 
{ 
write your code here 
} 
+0

感謝が必要だと思うより多くの通知を参照してください。私はAppDelegateからの私のViewControllerのメソッドを呼び出すことができますか。?データは、コードがViewControllerをである取得ので知りたい。 – Rohan

+0

それでは、View ControllerがMethod of View Controllerを試してみる必要があります。 –

+0

Urメソッドを呼び出すでしょう –

関連する問題