25

我正在尝试减慢 UICollectionView 中的滚动速度。一切都很好,细胞之间的距离也很好,但它移动得太快了。

如何调整滚动的灵敏度或速度?

[编辑]我忘了提到我已经尝试过:

self.collectionView.decelerationRate = UIScrollViewDecelerationRateFast;

self.collectionView.decelerationRate = UIScrollViewDecelerationRateNormal;

速度没有明显变化...

4

3 回答 3

44

UICollectionView是 的子类UIScrollView,因此您可以decelerationRate在集合视图控制器中调整viewDidLoad,如下所示:

目标-C:

- (void)viewDidLoad
{
    [super viewDidLoad];

    self.collectionView.decelerationRate = UIScrollViewDecelerationRateFast;
};

迅速:

override func viewDidLoad() {
    super.viewDidLoad()

    self.collectionView.decelerationRate = UIScrollViewDecelerationRateFast
}
于 2013-02-19T01:13:44.350 回答
5

对于任何想在 Swift 中进行操作的人

 self.collectionView.decelerationRate = UIScrollViewDecelerationRateFast

斯威夫特 5:

 self.collectionView.decelerationRate = UIScrollView.DecelerationRate.fast
于 2016-02-12T01:44:23.680 回答
0

对于那些不使用 a 的人UICollectionViewController,我一直在寻找一种方法来完成这项工作。事实证明,如果您将自己子类化UICollectionView并设置self.decelerationRate = UIScrollViewDecelerationRateFast为所需的init(coder aDecoder:)方法,那么您就可以开始了。

对此的推测是 UICollectionView 不喜欢在布局创建后调整减速率。我不能确定,我在这方面浪费了足够多的时间。只是以为我会发布答案。

SDK: iOS 9+ Xcode: 8.3.2 Swift: 3.1

于 2017-05-08T01:59:49.947 回答