我在一個單獨的類中有一個靜態方法來處理UIKeyboard。 WillHideNotification
& UIKeyboard.WillShowNotification
,以便它可以在整個應用程序中使用。在xamarin中獲取NSNotification的觀察者
我加入觀察者的視圖控制器通過以下方式: -
NSNotificationCenter.DefaultCenter.AddObserver (UIKeyboard.WillHideNotification, KeyboardAppearanceUtilities.OnKeyboardNotification);
我怎樣才能得到通知操作方法的觀測對象,在KeyboardAppearanceUtilities
類聲明如下: -
public static void OnKeyboardNotification (NSNotification notification)
{
}
notification.Object始終爲空,原因很明顯,我沒有在AddObserver
方法中設置對象參數。
有人可以指導我如何重新排列代碼,以便這個通知處理程序可以在整個應用程序中使用,也讓我訪問觀察員?
在這種情況下,觀察者是你的'OnKeyboardNotification()'方法。你是指發件人嗎?這應該是鍵盤顯示的UIWindow,所以在大多數情況下只有唯一的應用程序窗口。 –
是觀察者是OnKeyboardNotification方法,我怎樣才能訪問該方法中的發件人? notification.Object爲null。 – ilight
如果notification.object爲null,那麼可能會發布通知而未指定對象。但在這種情況下,爲什麼你需要訪問發件人? –