protected override IParcelable OnSaveInstanceState()
		{
			IParcelable superState = base.OnSaveInstanceState();
			ObservableScrollSavedState ss = new ObservableScrollSavedState(superState)
			{
				PrevScrollY = _mPrevScrollY,
				ScrollY = _mScrollY
			};
			return ss;
		}
        protected override IParcelable OnSaveInstanceState()
        {
            IParcelable superState        = base.OnSaveInstanceState();
            ObservableScrollSavedState ss = new ObservableScrollSavedState(superState)
            {
                PrevScrollY = _mPrevScrollY,
                ScrollY     = _mScrollY
            };

            return(ss);
        }
        protected override void OnRestoreInstanceState(IParcelable state)
        {
            ObservableScrollSavedState ss = state as ObservableScrollSavedState;

            if (ss != null)
            {
                _mPrevScrollY = ss.PrevScrollY;
                _mScrollY     = ss.ScrollY;
                base.OnRestoreInstanceState(ss.SuperState);
            }
        }