【问题标题】:UIScrollView not bouncing vertical when scrolled to top滚动到顶部时,UIScrollView 不会垂直弹跳
【发布时间】:2011-05-10 17:41:54
【问题描述】:

我对其中的 UIScrollViewUIWebView 有一个奇怪的问题。 首先是我的设置:

我将一个 UIView 子类化并添加了以下代码:


.h

@interface MySubclassedView : UIView {
    UIScrollView *scrollView;
    UIWebView *contentView;
}

@property(nonatomic,retain) UIWebView *contentView;

.m

- (id)initWithFrame:(CGRect)frame {
    self = [super initWithFrame:frame];
    if (self) {
        self.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
        [self setupContentView];
    }
    return self;
}

设置内容视图

-(void)setupContentView {

    // Content View
    self.contentView = [[UIWebView alloc] init];
    self.contentView.backgroundColor = [UIColor whiteColor];

    // ScrollView
    scrollView = [[UIScrollView alloc] init];
    scrollView.backgroundColor = [UIColor whiteColor];
    scrollView.alwaysBounceVertical = YES;
    [scrollView addSubview:self.contentView];
    [self addSubview:scrollView];
}

和我的 layoutSubViews

- (void)layoutSubviews {
    XLog(""); // something like NSLog
    [super layoutSubviews];
    scrollView.frame = CGRectMake(0,0, self.width, self.height);
    self.contentView.frame = CGRectMake(0,0, self.width, self.height);
}

所有这一切的问题是,当我的滚动视图没有完全滚动到顶部时,它第一次反弹。在滚动视图滚动到顶部或底部后,我无法向下拖动视图,但只要我在拖动,layoutSubviews 方法就会被调用。

为了更好地理解,我制作了一个简短的屏幕视频来演示该行为:http://www.screenr.com/Gy9

感谢所有帮助。如果有不清楚的地方,请在 cmets 中告诉我。

【问题讨论】:

    标签: iphone objective-c uiwebview uiscrollview bounce


    【解决方案1】:

    我真的很抱歉我没有更有用的东西,但是:

    重要提示:您不应该嵌入 UIWebView 或 UITableView 中的对象 UIScrollView 对象。如果你这样做, 可能会导致意外行为,因为 两个对象的触摸事件可以 混为一谈,处理不当。

    来自:

    http://developer.apple.com/library/ios/#documentation/uikit/reference/UIWebView_Class/Reference/Reference.html

    并不意味着没有办法让它发挥作用。但可能意味着您想限制将头撞到墙上以使其工作的时间。

    也就是说,只要一个人的 userInteractionEnabled 设置为 NO,我已经成功地将 UIWebViews 嵌入到 UIScrollViews 中。

    【讨论】:

    • 哦...哦...我的上帝。我不知道为什么我实现了滚动视图。你完全正确。 webview 会自行滚动。啊现在我知道了。在我切换到 webview 之前,这是一个正常的视图。谢谢!删除了滚动视图,一切正常。
    猜你喜欢
    • 1970-01-01
    • 2017-11-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多