コード例 #1
0
        public void UnRegisterForKeyboardNotifications()
        {
            disposableWillShow?.Dispose();
            disposableWillHide?.Dispose();

            disposableWillShow = null;
            disposableWillHide = null;

            CurrentViewTreeObserver.RemoveOnGlobalLayoutListener(keyboardListner);
            keyboardListner = null;
        }
コード例 #2
0
        public void RegisterForKeyboardNotifications()
        {
            keyboardListner = keyboardListner ?? new KeyboardListner();
            CurrentViewTreeObserver.AddOnGlobalLayoutListener(keyboardListner);

            willShow           = willShow ?? Observable.FromEventPattern <double>(h => keyboardListner.KeyboardWillShow += h, h => keyboardListner.KeyboardWillShow -= h);
            disposableWillShow = disposableWillShow ?? willShow.Subscribe(ep => KeyboardListner_KeyboardWillShow(ep.Sender, ep.EventArgs));

            willHide           = willHide ?? Observable.FromEventPattern <double>(h => keyboardListner.KeyboardWillHide += h, h => keyboardListner.KeyboardWillHide -= h);
            disposableWillHide = disposableWillHide ?? willHide.Subscribe(ep => KeyboardListner_KeyboardWillHide(ep.Sender, ep.EventArgs));
        }