private void ViewTreeObserverOnScrollChanged(object sender, EventArgs eventArgs) { if (ProfilePageGeneralTabScrollingContainer.GetChildAt(0).Bottom <= (ProfilePageGeneralTabScrollingContainer.Height + ProfilePageGeneralTabScrollingContainer.ScrollY)) { ProfilePageGeneralTabCommentsList.NestedScrollingEnabled = true; } else { _disableNestedScrollingOnTouchUp = true; } }
private async void RootViewOnTouch(object sender, View.TouchEventArgs touchEventArgs) { touchEventArgs.Handled = false; if (touchEventArgs.Event.Action == MotionEventActions.Up || touchEventArgs.Event.Action == MotionEventActions.Cancel) { await Task.Delay(200); //why? because fling... I should listen for when it ends but 200ms seem to do the job just fine /shrug if (_disableNestedScrollingOnTouchUp) { if (ProfilePageGeneralTabScrollingContainer.GetChildAt(0).Bottom > ProfilePageGeneralTabScrollingContainer.Height + ProfilePageGeneralTabScrollingContainer.ScrollY) { ProfilePageGeneralTabCommentsList.NestedScrollingEnabled = false; } _disableNestedScrollingOnTouchUp = false; } } }