滚动总是从 ScrollView 的顶部开始?
Posted
技术标签:
【中文标题】滚动总是从 ScrollView 的顶部开始?【英文标题】:Scroll always start on the top in ScrollView? 【发布时间】:2011-03-30 09:55:56 【问题描述】:我有一个 UITableView,所有行都导航到其他 UIView,其中包括 UIScrollView。有时当我导航它时,它会从视图的中间或视图的底部开始滚动。但是我希望每次滚动它时,滚动都必须在视图的顶部。我该怎么做?
【问题讨论】:
【参考方案1】:确保您在 viewWillAppear 或 viewDidAppear 中使用[self.scrViewHaberDetay setContentOffset:CGPointMake(0, 0)];
,而不是在 viewDidLoad 中。然后它将起作用。
【讨论】:
【参考方案2】:使用这个方法:[_tableView setContentOffset:CGPointMake(0.f, 0.f) animated:NO];
【讨论】:
这个视图不包括 tableview... 这是一个 UIScrollView 所以我试试这个: [self.scrViewHaberDetay setContentOffset:CGPointMake(0.f, 0.f) animated:NO];但它没有用...... 也许你能给我们发个视频,因为我个人完全不理解你想要的行为,而这正是你的问题。【参考方案3】:我认为当 UIView 加载时,您可以手动使其滚动到顶部,因此它将始终从顶部开始。 [self.scroll scrollRectToVisible:rc animated:YES],rc是CGRect,可以设为rc.origin.x=0, rc.origin.y=0;
【讨论】:
我试过了,但没用; CGRect cr; cr.origin.x = 0; cr.origin.y = 0; [self.scrView scrollRectToVisible:cr 动画:YES]; 这很棘手......我用它来自动滚动计时器,所以它可以自动从上到下滚动。然后检查文档,应该有类似的功能做同样的事情。以上是关于滚动总是从 ScrollView 的顶部开始?的主要内容,如果未能解决你的问题,请参考以下文章
Android ScrollView在滚动中调用scrollTo(0,0)回到顶部无效