是否可以在scrollToItemAtIndexPath方法的atScrollPosition参数上添加边距?

时间:2013-09-02 13:26:06

标签: ios objective-c

我正在使用水平UICollectionView构建应用。单元格在一个水平行中排列为全高,因此只能水平滚动。有一个菜单,其中包含用于滚动到特定单元格的快捷方式。这可以使用以下方法正常工作:

    [myCollectionView scrollToItemAtIndexPath:[NSIndexPath indexPathForRow:sender.tag inSection:0]
                             atScrollPosition:UICollectionViewScrollPositionLeft
                                     animated:YES];

但是,使用UICollectionViewScrollPositionLeft常量将胶合的单元格定位到视图的左边缘。有没有办法在单元格的左边添加边距?理想情况下,在集合视图的布局中使用minimumInteritemSpacing指定的数量相同。

提前感谢您的帮助!

2 个答案:

答案 0 :(得分:0)

我可能在这里误解了你,但听起来你希望单元格在滚动后居中。为此,您可以使用UICollectionViewScrollPositionCenteredHorizontally代替UICollectionViewScrollPositionLeft

[myCollectionView scrollToItemAtIndexPath:[NSIndexPath indexPathForRow:sender.tag inSection:0]
                         atScrollPosition:UICollectionViewScrollPositionCenteredHorizontally
                                 animated:YES];

答案 1 :(得分:-1)

我通过增加单元格的宽度并将单元格内的所有内容向右移动来解决问题,基本上将填充添加到单元格而不是左边距。

对于某些情况并不理想,但就我而言,它可以胜任。希望这有助于其他人。