2012-01-26 6 views
0

私のアプリケーションのために設定しています。設定のデフォルト値が変更されたことを通知することができます(設定アプリケーションで設定を変更することによって)。しかし、どのように私は、デフォルトの設定が変更されていることを知って、他のクラスをさせることができデフォルト設定が変更されたことを他のクラスに通知する方法

答えて

0

あなたは、あなたがして通知するためのNSNotificationCenterを使用することができます通知するいくつかのクラスを持っている場合。 このthreadには、通知センターを使用するためのアイデアが表示されます。

0

あなたはそれを達成することができますいくつかの方法があります。

まず - 他のクラスを符号化することによって、値を必要とするたびにチェックしてい設定コンテナは常に利用可能なシングルトンパターンオブジェクトです。

第2 - すべての関連するクラスは、必要に応じてNSNotificationによって通知されます。

そして、もっと、おそらく多くの...

+1

を指定できます。私は[link](http://developer.apple.com/library/ios/#samplecode/AppPrefs/Introduction/Intro.html)を見て、他のクラス(TableViewController)に[table reloadData ]他のクラスがtableViewでない場合はどうなりますか? – tonytran

0

linkには、必要な作業がすべて表示されます。

このコード:

[[NSNotificationCenter defaultCenter] addObserver:yourClassThatNeedsToBeNotified selector:@selector(selectorNameOfYourClass:) 
             name:UIApplicationDidFinishLaunchingNotification object:nil]; 

はNSUserDefaultsの変更に関する通知を追加するために専用されています。

この通知を受け取る必要があるいくつかのクラスがある場合は、このコードを各クラスのinitメソッドに追加するだけで、deallocでこの通知を削除することを忘れないでください。

関連する問題