2012-01-24 5 views
0

私はiPhone用のゲームを作っており、ホームボタンを押したときのようにユーザーのゲームが中断したときにタイマーを一時停止できるようにしたいと考えています。xcodeと目的のCでappdelegateからタイマーを一時停止する方法

- (void)applicationWillResignActive:(UIApplication *)application 

私は苦労していますどのようなタイマーを一時停止する方法である:私は、アプリデリゲートにアプリが呼び出され、フォアグラウンドの葉方法があることを知っています。私はpauseGameと呼ばれるビューコントローラの機能を持っており、ユーザーがゲームを一時停止したいときに使用されます。私は、この方法を使ってゲームを一時停止するのが最も簡単だと考えていました。しかし、私はこのメソッドを呼び出す方法を理解することはできません。何か案は?そして初心者の質問には申し訳ありません。

+0

カウントダウンタイマー(残り時間)またはカウントアップタイマー(経過時間)ですか?あなたはあなたのゲームアップデート方法でタイマーを減らしたり増やしたりするのですか?それとも、修正していない基本時間からの残り時間/経過時間を計算するだけですか? –

答えて

3

最短の方法は、利用通知にある:

1.(...他のどこか)アプリケーションデリゲートで、カスタム通知を定義

#define kApplicationWillResignActiveNotification 
@"kApplicationWillResignActiveNotification" 

2.が派遣applicationWillResignActive:メソッドが呼び出されたときの通知

[[NSNotificationCenter defaultCenter] postNotificationName: 
kApplicationWillResignActive object:nil]; 

3.は、あなたがそれを追加する場合は、NSNotificationオブジェクトを取得することができます

[[NSNotificationCenter defaultCenter] addObserver:self 
selector: @selector(appResigned:) 
name:kApplicationWillResignActiveNotification object: nil]; 

4.(*ご通知を@definedヘッダファイルをインポートする)あなたのプロジェクトにしたい、これまでその通知に耳を傾けますあなたのセレクタに

-(void)appResigned:(NSNotification *)notification; 
+0

素晴らしいことに感謝しています –

関連する問題