#pragma mark  -- 使用场景:选中非第一张图片用CollectionView进行浏览时,CollectionView滑动到对应的位置

#pragma mark  -- 重点在于UICollectionViewFlowLayout的prepareLayout方法的使用

#pragma mark  -- 自己定义UICollectionViewFlowLayout的h文件

@interface SSCollectionViewFlowLayout : UICollectionViewFlowLayout

/**

*  collectionView的偏移量

*/

@property (nonatomic, assign) CGPoint offsetpoint;

@end


#pragma mark  -- 自己定义UICollectionViewFlowLayout的m文件

@implementation SSCollectionViewFlowLayout

- (instancetype)init{

self = [super init];

if (self) {

self.scrollDirection = UICollectionViewScrollDirectionHorizontal;

}

return self;

}

- (void)prepareLayout{

[super prepareLayout];

self.collectionView.contentOffset = self.offsetpoint;

}

- (BOOL)shouldInvalidateLayoutForBoundsChange:(CGRect)oldBounds{

return NO;

}


#pragma mark  --  剩下的工作就是在UICollectionView 所在的ViewController设置偏移量

@property (nonatomic, strong) SSCollectionViewFlowLayout *viewLayout;

@property (nonatomic, strong) UICollectionView *ssCollectionView;


- (void)viewWillAppear:(BOOL)animated{

[super viewWillAppear:animated];

self.ssCollectionView.frame = CGRectMake(0.f, 0.f, ScreenWidth, ScreenHeight);

self.viewLayout.offsetpoint = CGPointMake(ScreenWidth *self.indexNumber, 0.f);

}


- (UICollectionView *)ssCollectionView{

if (_ssCollectionView != nil) {

return _ssCollectionView;

}

self.viewLayout = [[SSCollectionViewFlowLayout alloc] init];

_ssCollectionView = [[UICollectionView alloc] initWithFrame:CGRectZero collectionViewLayout:self.viewLayout];

_ssCollectionView.showsHorizontalScrollIndicator = FALSE; // 去掉滚动栏

_ssCollectionView.pagingEnabled = YES;

_ssCollectionView.delegate = self;

_ssCollectionView.dataSource = self;

[_ssCollectionView registerClass:[CustomCollectionViewCell class] forCellWithReuseIdentifier:@"CollectionCell"];

return
_ssCollectionView;

}




UICollectionView在初始化的时候移动到某个距离的更多相关文章

  1. 自定义UICollectionViewController之后 如何设置UICollectionView的布局方式

    我们很多时候使用UICollectionView 可能都是直接创建 UICollectionView   通过初始化的时候  传入一个布局对象的方式来使用UICollectionView 比如我们之前 ...

  2. 自定义UICollectionViewController之后 如何设置UICollectionView的布局方式--备用

    我们很多时候使用UICollectionView 可能都是直接创建 UICollectionView   通过初始化的时候  传入一个布局对象的方式来使用UICollectionView 比如我们之前 ...

  3. 常用几个UITableView,UICollectionView  UIScrollView关键点

    UITableView   UITableView 在Ios中大量使用,我们对UITableview中的有关知识进行整理     UITAbleView是表视图控制器    1 UITableView ...

  4. UICollectionView在Swift3.0中的用法

    UICollectionView在Swift3.0中的用法 UICollectionView的初始化跟OC中是相似的,创建 GameView 集成自 UICollectionView .注意不同于UI ...

  5. UICollectionView的常用方法

    class UICollectionView : UIScrollView //初始化,位置,风格 init(frame: CGRect, collectionViewLayout layout: U ...

  6. iOS-UICollectionView

    1--------------------------------------------------------------------------------------------------- ...

  7. UIColletionView 的属性与常用方法介绍

    UICollectionView基础   初始化部分: UICollectionViewFlowLayout *flowLayout= [[UICollectionViewFlowLayout all ...

  8. 梯度下降(Gradient Descent)小结

    在求解机器学习算法的模型参数,即无约束优化问题时,梯度下降(Gradient Descent)是最常采用的方法之一,另一种常用的方法是最小二乘法.这里就对梯度下降法做一个完整的总结. 1. 梯度 在微 ...

  9. JavaScript实现拖拽元素对齐到网格(每次移动固定距离)

    这几天在做一个拖拽元素的附加功能,就是对齐到网格,实际上就是确定好元素的初始位置,然后拖拽元素时,每次移动固定的距离.让元素都可以在网格内对齐.先上效果图,然后在详细说明一下细节问题 做了一个gif图 ...

随机推荐

  1. jQuery+存储过程实现无刷新分页(九)

    涉及到得知识点: 1.分页存储过程 2.分页原理 3.jQuery DOM操作 4.jQuery Ajax存取数据   效果图:

  2. ASS字幕制作和压制教程

    首先放上一个成品预览,本教程只讲解基础的字幕制作,特效字幕请去TCAX论坛学习.   http://www.tudou.com/programs/view/rcv33Uwf3hM/   ======= ...

  3. ubuntu ufw防火墙软件的配置入门

    顺便,一条龙作完安全吧. ufw的使用,是比iptables简单.但只能作简单的事儿,更改简单的netfilter里的iptable里的记录.难点的,可能还是得iptables原生命令. 自打2.4版 ...

  4. (第7篇)灵活易用易维护的hadoop数据仓库工具——Hive

    摘要: Hive灵活易用且易于维护,十分适合数据仓库的统计分析,什么样的结构让它具备这些特性?我们如何才能灵活操作hive呢? 博主福利 给大家推荐一套hadoop视频课程 [百度hadoop核心架构 ...

  5. linux命令之grep用法

    grep是linux中很常用的一个命令,主要功能就是进行字符串数据的对比,能使用正则表达式搜索文本,并将符合用户需求的字符串打印出来.grep全称是Global Regular Expression ...

  6. optional

    public class Test { public static void main(String[] args) { People people = new People(); Optional& ...

  7. python学习之python安装

    1.下载python源码包 wget https://www.python.org/ftp/python/3.5.5/Python-3.5.5.tar.xz 2.下载  xz yum -y insta ...

  8. Codeforces Round #429 (Div. 2) - D Leha and another game about graph

    Leha and another game about graph 题目大意:给你一个图,每个节点都有一个v( -1 , 0 ,1)值,要求你选一些边,使v值为1 的点度数为奇数,v值为0的度数为偶数 ...

  9. poj2230 Watchcow【欧拉回路】【输出路径】(遍历所有边的两个方向)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4392 题目大意: 一个图,要将每条边恰好遍历两遍,而且要以不同的方向,还要回到原点. dfs解法    ...

  10. 003.HAProxy ACL规则的智能负载均衡

    一 简介 HAProxy可以工作在第七层模型,可通过ACL规则实现基于HAProxy的智能负载均衡系统,HAProxy通过ACL规则完成以下两种主要功能: 通过ACL规则检查客户端请求是否合法,如果符 ...