MMBannerLayout 自定义横幅布局实现漂亮iOS轮播图效果
MMBannerLayout 自定义横幅布局实现漂亮iOS轮播图效果
Swift 布局
共166Star
详细介绍
MMBannerLayout
Demo
Setting
Use Banner
if let layout = collection.collectionViewLayout as? MMBanerLayout {
// Space every Item
layout.itemSpace = 5.0
// Size for banner cell
layout.itemSize = self.collection.frame.insetBy(dx: 40, dy: 40).size
// scroll to inifite (ex. completed block check your content size is enough to cycle infinite)
(collection.collectionViewLayout as? MMBanerLayout)?.setInfinite(isInfinite: true, completed: { [unowned self] (result) in
// result false mean you cant infinite
})
// auto play
(collection.collectionViewLayout as? MMBanerLayout)?.autoPlayStatus = .play(duration: 2.0)
// angle need to be (0~90)
layout.angle = 45
}
Use BannerLayoutDelegate
//(Just setting self.collectionView.delegate = [your target])
extension [your Target]: BannerLayoutDelegate {
// Current IndexPath on center
func collectionView(_ collectionView: UICollectionView, focusAt indexPath: IndexPath) {
print("Focus on \(indexPath)")
}
}
Installation
MMBannerLayout is available through CocoaPods. To install it, simply add the following line to your Podfile:
(if you cant find pod command "pod repo update")
pod "MMBannerLayout"
Author
License
MMBannerLayout is available under the MIT license. See the LICENSE file for more info.