繁体   English   中英

如何在滚动期间通过按下按钮停止UIPickerView-Xamarin.IOS

[英]How to stop UIPickerView during scrolling by pressing a button - Xamarin.IOS

我正在开发Xamarin.ios项目。

我创建的UIPickerView的编号为1到10000。它可以很好地滚动。

这是我的需要。 我需要在按下按钮时滚动时停止UIPickerView并想获取停止位置值。

请帮我解决这个问题。 我已经研究了很多,但是还没有解决。

UIPickerView包含一个UIScrollView作为其子视图之一,因此,如果您递归搜索该视图,然后测试以查看它是否由于“浮动”而仍在滚动(动画),则可以通过设置将其停止在其轨迹中内容偏移量到当前内容偏移量。

public void StopScrolling(UIPickerView view)
{
    void FindViews(UIView subView)
    {
        foreach (var item in subView.Subviews)
        {
            switch (item)
            {
                case UIScrollView sv:
                    if (sv.Dragging)
                        sv.SetContentOffset(sv.ContentOffset, false);
                    break;
                default:
                    FindViews(item);
                    break;
            }
        }
    }
    FindViews(view);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM