如何直接滚动到特定的内容偏移量(不显示其他内容)
Posted
技术标签:
【中文标题】如何直接滚动到特定的内容偏移量(不显示其他内容)【英文标题】:How to scroll to a particular content offset directly(without showing other contents ) 【发布时间】:2014-01-22 18:05:28 【问题描述】:我正在使用
[scrollView_Mag setContentOffset:CGPointMake(320 * currentImageView, 0) animated:No];
以便我可以滚动到特定视图(根据需要)。在代码中“currentImageView”是视图的编号,我想滚动。它工作得很好。唯一的问题是,例如我是 320*10 点,我想将内容偏移设置为 320*2,它从点 320*10 滚动到 320*2,从而显示所有其他内容。这是我不想要的。我希望它立即滚动而不显示任何其他内容
【问题讨论】:
什么是No
?如果你不想让它动画,你需要NO
。
@rmaddy 我试过了,是的,两者都没有。但没办法,我想要
【参考方案1】:
[scrollView_Mag setHidden:YES];
[scrollView_Mag setContentOffset:CGPointMake(320 * currentImageView, 0) animated:NO];
[scrollView_Mag setHidden:NO];
当你移动内容偏移量时:
//Define this BOOL in header
isManuallyScrolling = YES;
[scrollView_Mag setHidden:YES];
[scrollView_Mag setContentOffset:CGPointMake(320 * currentImageView, 0) animated:NO];
//Use the scrollView delegate method to see when it stopped scrolling
- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView
//If we manually scrolled, unhide the scrollView
if (isManuallyScrolling)
[scrollView_Mag setHidden:NO];
isManuallyScrolling = NO;
【讨论】:
它也是,没用。我尝试过这个。它应该有效,就像我需要的那样。但它没有。 :( 这是一个非常好的技巧。我在阅读您的答案后尝试过,但问题是它使 scrollView 永久隐藏。即永远不会调用“- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView” @PiyushMishra 先生,您能帮我解决这个问题吗?我会非常感谢你 任何其他提示,建议。会很棒 @Jeev 尝试上述实现,但将动画设置为YES
。委托方法可能不会触发,因为从技术上讲,它并不是每次都在加速或减速。以上是关于如何直接滚动到特定的内容偏移量(不显示其他内容)的主要内容,如果未能解决你的问题,请参考以下文章