2012-01-12 2 views
0

私は、別のUIViewController(secondViewController)にボタンを持つUIViewController(firstViewController)を持っています。初めてsecondViewControllerが表示されたら、UIAlertViewを表示します。今私はこれが最初に簡単だろうと思った - 私はブール変数を作成し、UIAlertViewが最初に表示された後に1に設定すると思った。しかし、私は今、ユーザーがfirstViewControllerに戻り、secondViewControllerを表示するためにボタンを再度クリックするたびに、ブール変数が再初期化されることを認識しています。UIViewControllerが割り当て解除されてもブール値(または一般的な変数)を保持する

このようなことのベストプラクティスは何ですか?

ありがとうございました!

アレックス

+0

で、その後methood

buttonPressed =buttonpressed+1; 

を押し、私は何が必要かもしれないと思います。.. 。 –

答えて

0

これはNSUserDefaultsのための偉大なユースケースです。これにより、BOOLまたはintfloatNSStringNSDateなどのように便利にアクセスできます。

NSUserDefaults* defaults = [NSUserDefaults standardUserDefaults]; 
[defaults setBool:YES forKey:@"seenIt"]; 
[defaults synchronize]; 

を使用してBOOLを設定し、他のソリューションが動作するものの

NSUserDefaults* defaults = [NSUserDefaults standardUserDefaults]; 
BOOL seenIt = [defaults boolForKey:@"seenIt"]; 
+0

それは素晴らしいです、ありがとう! –

+0

@PengOne私の答えの違いは、私が投稿した後まであなたのことを見ていないということでした。それは、似ていてもコピーではありませんでした。しかし、私の答えが余分なので、私はそれを削除しました。 – zaph

+0

@CocoaFu私はそれがコピーではないと思った、ただ真に何かを逃したと思った。 – PengOne

0

を使用して、それを取得し、私は別のCヘッダ・ファイルを追加

すなわち、はるかに簡単に解決策を使用します定数と呼ばれ、整数変数を初期化する

ボタン上

その後、firstViewControllerで

#include constants.h 

グローバル変数に見てsecondViewController

#include Constants.h 

if(buttonPressed==1) 
{ 
///Show alert View 
} 
関連する問題