iOS滚动视图禁用自动滚动到顶部

Elo*_*lin 3 objective-c uiscrollview ios

我是iOS开发的新手,所以对于某些人来说这可能是一个简单的问题。我正在创建一个scrollview(尝试了不同的方法,UIScrollView,UITableView,UITableViewController),每次向下滚动时,它都会自动滚动回到顶部。为什么会这样?

我知道“ scrollsToTop”正在听一些滚动到顶部的问题,但是设置为NO,所以不应该这样。已测试“ pagingEnabled”为是和否,但没有影响。

试图实现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;
Run Code Online (Sandbox Code Playgroud)

不要介意格式。一团糟。tableView属于应用程序委托,并在..didFinishLaunchingWithOptions:...函数中调用。我在Scroller函数“ scrollViewShouldScrollToTop”中有一个断点,但从未被击中。

Sri*_*aju 5

如果您点击顶部栏(黑色栏),可能会自动滚动到顶部?无论如何,您都可以尝试禁用该功能-

[yourScrollView].scrollsToTop = NO;

这应该适用于tableViewscrollView