基于collectionView的轮播图特效
demo下载地址Git下载地址
1、自定义collection
//
// CircleLayout.h
// LDTXDEMO
//
// Created by 罗东 on 2018/1/16.
// Copyright © 2018年 LuoDong. All rights reserved.
// gitHub:https://github.com/TonyDongDong/CollectionView.git
//
#import "CircleLayout.h"
@implementation CircleLayout
-(CGSize)collectionViewContentSize
{
float width = self.collectionView.frame.size.width *([self.collectionView numberOfItemsInSection:0 ]+2);
float height= self.collectionView.frame.size.height;
CGSize size = CGSizeMake(width, height);
return size;
}
- (BOOL)shouldInvalidateLayoutForBoundsChange:(CGRect)newBounds
{
return YES;
}
#pragma mark - UICollectionViewLayout
- (UICollectionViewLayoutAttributes *)layoutAttributesForItemAtIndexPath:(NSIndexPath *)indexPath
{
//3D代码
UICollectionViewLayoutAttributes* attributes = [UICollectionViewLayoutAttributes layoutAttributesForCellWithIndexPath:indexPath];
UICollectionView *collection = self.collectionView;
float width = collection.frame.size.width;
float x = collection.contentOffset.x;
CGFloat arc = M_PI * 2.0f;
NSInteger numberOfVisibleItems = [self.collectionView numberOfItemsInSection:0 ];
attributes.center = CGPointMake(x+[UIScreen mainScreen].bounds.size.widt