【问题标题】: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 我试过了,是的,两者都没有。但没办法,我想要

标签: ios uiscrollview scroll uiscrollviewdelegate


【解决方案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。委托方法可能不会触发,因为从技术上讲,它并不是每次都在加速或减速。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-10-10
  • 2019-07-06
  • 2016-03-20
  • 1970-01-01
  • 2018-05-07
相关资源
最近更新 更多