Iphone 当滚动到顶部时,UIScrollView不垂直反弹
我对其中的Iphone 当滚动到顶部时,UIScrollView不垂直反弹,iphone,objective-c,uiwebview,uiscrollview,bounce,Iphone,Objective C,Uiwebview,Uiscrollview,Bounce,我对其中的UIScrollView和UIWebView有一个奇怪的问题。 首先,我的设置: 我对UIView进行了子类化,并向其添加了以下代码: .h @interface MySubclassedView : UIView { UIScrollView *scrollView; UIWebView *contentView; } @property(nonatomic,retain) UIWebView *contentView; .m - (id)initWithFr
UIScrollView
和UIWebView
有一个奇怪的问题。
首先,我的设置:
我对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];
}
和我的布局子视图
- (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);
}
所有这些的问题是,当我的scrollview没有完全滚动到顶部时,它会第一次反弹。scrollview滚动到顶部或底部后,我无法向下拖动视图,但只要我拖动,就会调用layoutSubviews
方法
为了更好地理解,我制作了一个短屏幕视频来演示这种行为:
谢谢你的帮助。如果有什么不清楚的地方,请在评论中告诉我。很抱歉,我没有更有用的东西,但是: 重要提示:您不应该嵌入 中的UIWebView或UITableView对象 UIScrollView对象。如果你这样做, 可能导致意外行为,因为 两个对象的触摸事件可以 被混淆和错误处理 发件人: 但这并不意味着没有办法让它工作。但这可能意味着你想限制你用头撞墙的时间来让它工作
也就是说,只要用户的userInteractionEnabled设置为NO,我就已经成功地将UIWebView嵌入到UIScrollView中。。。。哦天哪。我不知道为什么我实现了滚动视图。你完全正确。网络视图会自动滚动。啊,现在我知道了。在我切换到网络视图之前,这是一个普通视图。谢谢放弃滚动视图,一切正常。