用户登录
用户注册

分享至

UIScrollView 不显示滚动指示器

  • 作者: iparanoia
  • 来源: 51数据库
  • 2022-10-21

问题描述

我有一个 UIScrollView,我使用它动态创建和调整大小...

I have a UIScrollView which I create and size dynamically using...

scrollView.contentSize = CGSizeMake(scrollView.frame.size.width , length);

然后我将 subviews 添加到 UIScrollView.我确实有 scrollView.showsVerticalScrollIndicator = YES;

I then add subviews to the UIScrollView. I do have scrollView.showsVerticalScrollIndicator = YES;

滚动时滚动指示器永远不会出现.

When scrolling the scroll indicator never appears.

即使我调用 [scrollView flashScrollIndicators] 也没有任何反应.

Even if I call [scrollView flashScrollIndicators] nothing happens.

想法?

推荐答案

遇到了同样的问题,找不到原因.最后一个答案给出了最后的提示:每当我添加新的子视图时,我首先从滚动视图中删除所有现有的子视图(显然还有滚动指示器).

Had the same problem and couldn't find the cause. The last answer gave the final hint: whenever I added new subviews I first removed all existing subviews from the scrollview (and apparently also the scroll indicators).

检查我的循环后,如果子视图确实是我想要删除的那种,滚动指示器就会出现:

After checking in my loop, if the subview really was of the kind I wanted to be removed the scroll indicators showed up:

for (NSObject * subview in [[[scrollView subviews] copy] autorelease]) {
    if ([subview isKindOfClass:[MySubView class]]) {
       [(MySubView*)subview removeFromSuperview];
    }
}   

更新:将代码更改为 Nikolai 的建议

Update: changed code to Nikolai's suggestion

软件
前端设计
程序设计
Java相关