滚动始终从 ScrollView 的顶部开始?
我有一个 UITableView,所有行都导航到其他 UIView,其中包括 UIScrollView。有时,当我导航时,它会从视图中间或视图底部滚动开始。但我希望每次滚动它时,滚动都必须位于视图的顶部。我怎样才能做到这一点?
I have an UITableView and all rows navigate to other UIView which include UIScrollView. Sometimes when I navigate it scroll start middle of the view, or bottom of the view. But I want everytime I scroll it, scroll must be on the top of the view. How can i do that?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
使用此方法:
[_tableView setContentOffset:CGPointMake(0.f, 0.f)animated:NO];
Use this methods :
[_tableView setContentOffset:CGPointMake(0.f, 0.f) animated:NO];
我认为当 UIView 加载时,您可以手动使其滚动到顶部,因此它将始终从顶部开始。 [self.scrollscrollRectToVisible:rcanimated:YES],rc为CGRect,可以设置rc.origin.x=0,rc.origin.y=0;
I think when the UIView loaded, you can manually make it scroll to top, so it will always be start on top. [self.scroll scrollRectToVisible:rc animated:YES], rc is CGRect, you can make it rc.origin.x=0, rc.origin.y=0;
确保您在 viewWillAppear 或 viewDidAppear 中使用
[self.scrViewHaberDetay setContentOffset:CGPointMake(0, 0)];
,而不是在 viewDidLoad 中。然后它就会起作用。make sure you are using
[self.scrViewHaberDetay setContentOffset:CGPointMake(0, 0)];
in viewWillAppear or viewDidAppear, not in the viewDidLoad. It will then work.