Xamairn.iOSでSettingsBundleの設定変更を検知する
ナビゲーションに移動
検索に移動
Xamarin.iOSはAddObserverが簡潔明瞭でよろしい。
public override void ViewDidLoad()
{
base.ViewDidLoad();
var nc = NSNotificationCenter.DefaultCenter;
nc.AddObserver(NSUserDefaults.DidChangeNotification, (notify) =>
{
// 変更されたぞ
});
}
テキストフィールドだと編集完了時に1回呼ばれるのではなく1文字修正されるごとに通知が飛んでくるから注意しろ。 NSUserDefaults.DidChangeNotificationでは変更有無だけを記録して、 UIApplication.DidBecomeActiveNotificatioで再読込するのがよいかもしれない。