在 iOS 13 以后,滚动条在停止滚动后的显示时间已经延长了1s以上,如果在滚动条没有隐藏时去刷新视图,可能会导致滚动条被子视图遮挡住,接着再滑动的时候就会出现滚动条在子视图下方的情况,只有当滚动条隐藏后再显示时,才会正常显示在最上面。
暂时想到的解决方法是在刷新时,把滚动条移到视图最上层位置。
以 scrollView 为例来说明下如何解决这样的问题:
if (@available(iOS 13, *)) {
for (UIView *view in self.mainScrollView.subviews) {
Class class = NSClassFromString(@"_UIScrollViewScrollIndicator");
if ([view isKindOfClass:class]) {
[self.mainScrollView bringSubviewToFront:view];
}
}
}
网友评论