[英]iOS scroll view disable auto scroll to top
我是iOS开发的新手,所以这对某人来说应该是一个简单的问题。 我正在创建一个scrollview(尝试不同的方式,UIScrollView,UITableView,UITableViewController),每次我向下滚动它会自动向上滚动到顶部。 为什么会这样?
我理解“scrollsToTop”正在监听一些客户滚动到顶部但是设置为NO所以不应该这样。 “pagingEnabled”已被测试为YES和NO,但没有影响。
试图实现一个UITableViewDelegate并覆盖scrollViewShouldSrollToTop函数并返回NO但该函数永远不会被调用,即使它被设置为tableView的委托。
@interface Scroller : NSObject<UITableViewDelegate>
@implementation
- (BOOL)scrollViewShouldScrollToTop:(UIScrollView )scrollView {return NO;}
// Did finish launching application
tableView = [[UITableView alloc] initWithFrame:tableRect style:UITableViewStyleGrouped];
self->tableView.pagingEnabled = NO;
tableView.scrollsToTop = NO;
[tableView setScrollsToTop:NO];
static Scroller s = [[Scroller alloc] init];
tableView.delegate = s;
别介意格式化。 一切都搞得一团糟。 tableView属于应用程序委托,在..didFinishLaunchingWithOptions:...函数中调用。 我在Scroller函数“scrollViewShouldScrollToTop”中有一个断点但它永远不会被击中。
如果您点击顶部栏(黑色栏),可能会发生自动滚动到顶部? 在任何情况下,您都可以尝试禁用该功能 -
[yourScrollView].scrollsToTop = NO;
这应该适用于tableView
或scrollView
我使用UIScrollView而不是UITableView,并将contentSize设置为比视图框架更大的东西然后它可以工作。 仍然不知道UITableView的问题是什么。
您应该禁用滚动视图的弹跳属性,在Inrterface构建器中将其设置为NO。
如果没有足够的项目来填充UITableView
所有高度 - 它每次都会向后滚动。 您还应该为UIScrollView
设置contentSize属性以使其可滚动。
当用户点击状态栏时,应该发生前面提到的滚动到顶部。 但据我所知,这不是你的问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.