【问题标题】:scrollViewDidEndDecelerating always returns 1 when first called in ios7scrollViewDidEndDecelerating 在 ios7 中第一次调用时总是返回 1
【发布时间】:2014-01-25 05:40:58
【问题描述】:

您好,我正在构建我的第一个应用程序并遇到了问题。

我正在建立一个页面来评论视频。该页面打开时会显示正确选择的视频,并具有滚动操作以允许在阵列中前后滑动。

以下代码触发的滚动操作始终会导致第一次向右滑动将索引设置为 1(向左滑动为 0),这会导致所选视频不再与正确的视频相邻。

我想知道是否有人可以帮助我提供有关如何使以下代码使索引中的第一次滑动结果保持有序的建议。我整天都在尝试各种事情,但没有运气。我有很多东西要学。

我试图以某种方式让第一次滑动以确认 self.currentVideoIndex,这看起来对吗?

- (void) scrollViewDidEndDecelerating:(UIScrollView *)scrollView
{
if ( scrollView == videoCollectionView )
{
    int index = videoCollectionView.contentOffset.x / videoCollectionView.frame.size.width; // original   int index = video CollectionView.contentOffset.x / movieCollectionView.frame.size.width;

    NSLog(@"index %i",index);

    [self setVideoIndex:index];
}

}

任何建议表示赞赏。

【问题讨论】:

  • OK 此代码有效,问题是由于未在 viewDidLoad 中启动偏移量造成的。添加 [videoCollectionView setContentOffset:CGPointMake(videoCollectionView.frame.size.width*self.currentVideoIndex, 0)];现在启动偏移量

标签: ios7 uiscrollview gesture


【解决方案1】:

好的,这段代码可以工作,问题是由于没有在 viewDidLoad 中启动偏移量。添加 [movieCollectionView setContentOffset:CGPointMake(movieCollectionView.frame.size.width*self.currentVideoIndex, 0)];

现在启动偏移量

【讨论】:

    猜你喜欢
    • 2014-03-17
    • 2010-11-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多