美文网首页iOS开发程序员iOS收藏
SDCycleScrollView实现自定义view的轮播(跑马

SDCycleScrollView实现自定义view的轮播(跑马

作者: 酷哥不回头看爆炸 | 来源:发表于2017-07-28 14:27 被阅读914次

    需求是一个跑马灯的效果

    效果效果

    已知SDCycleScrollView的轮播实现是基于Collectionview的。 如果我们想自定义实现轮播展示的内容就可以自定义一个CollectionviewCell 。让 SDCycleScrollView 的 Collectionview 使用我们自定义cell。

    实现步骤

    对修改pod源码不赞成的同学可以return。我个人是把SDCycleScrollView从pod中提出来了。

    1、在 SDCycleScrollView.h中添加一个block:

    /** 自定义collectionViewCell */
    @property (copy) UICollectionViewCell * (^cellForRowAtIndexPathCompletion)(UICollectionView *tableView, NSIndexPath *indexPath);
    

    2、在SDCycleScrollView.m UICollectionViewDataSource 的获取UICollectionViewCell的代理方法中添加代码

    
    - (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath
    {
        
        if (_cellForRowAtIndexPathCompletion) {
            return _cellForRowAtIndexPathCompletion(collectionView,indexPath);
        }
        
        SDCollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:ID forIndexPath:indexPath];
        ///....
    

    3、把SDCycleScrollView 的 collectionView 暴露出来 。把mainView属性移动到SDCycleScrollView.h中

    @property (nonatomic, weak) UICollectionView *mainView; // 显示图片的collectionView
    

    4、给block属性赋值

    总结

    实现需求效果有点投机取巧,但是缩短了开发时间。才疏学浅 如果文章有不正确/不可取的地方, 望大神指正。

    iOS 开发交流群:479663605

    相关文章

      网友评论

        本文标题:SDCycleScrollView实现自定义view的轮播(跑马

        本文链接:https://www.haomeiwen.com/subject/rzaxlxtx.html