UICollectionView在初始化的时候移动到某个距离
#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在初始化的时候移动到某个距离的更多相关文章
- 自定义UICollectionViewController之后 如何设置UICollectionView的布局方式
我们很多时候使用UICollectionView 可能都是直接创建 UICollectionView 通过初始化的时候 传入一个布局对象的方式来使用UICollectionView 比如我们之前 ...
- 自定义UICollectionViewController之后 如何设置UICollectionView的布局方式--备用
我们很多时候使用UICollectionView 可能都是直接创建 UICollectionView 通过初始化的时候 传入一个布局对象的方式来使用UICollectionView 比如我们之前 ...
- 常用几个UITableView,UICollectionView UIScrollView关键点
UITableView UITableView 在Ios中大量使用,我们对UITableview中的有关知识进行整理 UITAbleView是表视图控制器 1 UITableView ...
- UICollectionView在Swift3.0中的用法
UICollectionView在Swift3.0中的用法 UICollectionView的初始化跟OC中是相似的,创建 GameView 集成自 UICollectionView .注意不同于UI ...
- UICollectionView的常用方法
class UICollectionView : UIScrollView //初始化,位置,风格 init(frame: CGRect, collectionViewLayout layout: U ...
- iOS-UICollectionView
1--------------------------------------------------------------------------------------------------- ...
- UIColletionView 的属性与常用方法介绍
UICollectionView基础 初始化部分: UICollectionViewFlowLayout *flowLayout= [[UICollectionViewFlowLayout all ...
- 梯度下降(Gradient Descent)小结
在求解机器学习算法的模型参数,即无约束优化问题时,梯度下降(Gradient Descent)是最常采用的方法之一,另一种常用的方法是最小二乘法.这里就对梯度下降法做一个完整的总结. 1. 梯度 在微 ...
- JavaScript实现拖拽元素对齐到网格(每次移动固定距离)
这几天在做一个拖拽元素的附加功能,就是对齐到网格,实际上就是确定好元素的初始位置,然后拖拽元素时,每次移动固定的距离.让元素都可以在网格内对齐.先上效果图,然后在详细说明一下细节问题 做了一个gif图 ...
随机推荐
- (第8篇)实时可靠的开源分布式实时计算系统——Storm
摘要: 在Hadoop生态圈中,针对大数据进行批量计算时,通常需要一个或者多个MapReduce作业来完成,但这种批量计算方式是满足不了对实时性要求高的场景.那Storm是怎么做到的呢? 博主福利 给 ...
- [转] React 是什么
用脚本进行DOM操作的代价很昂贵.有个贴切的比喻,把DOM和JavaScript各自想象为一个岛屿,它们之间用收费桥梁连接,js每次访问DOM,都要途径这座桥,并交纳“过桥费”,访问DOM的次数越多, ...
- Codeforces 594A - Warrior and Archer
题目大意:给你在一条线上的n(偶数)个点,mike和alice 开始禁点,他们轮流开始,直到最后只剩下两个点, mike希望剩下的两个点距离尽可能小,alice希望剩下的两个点距离尽可能大,他们都采用 ...
- Python字符串capitalize center 方法
一.capitalize 首字母大写 name = "wohaoshuai" print(name.capitalize()) #首字母大写 Wohaoshuai 二.center ...
- Python常用模块--datetime
datetime是Python专门用于处理日期和时间的标准模块. 1.获取当前的本地时间 #!/usr/bin/env python# -*- coding:utf-8 -*-__author__ = ...
- Object类浅析
Object类的方法有: hashCode(): 返回该对象的哈希码值 hashCode 的常规协定是: 在 Java 应用程序执行期间,在同一对象上多次调用 hashCode 方法时,必须一致地返回 ...
- 从新安装SQLserver 过程中报错问题合集
1.安装SQL SERVER2008 到安装支持文件就闪退? 分析:这个是由于安装目录没有删除干净导致的,我遗漏了一个文件夹:microsoft Management console文件夹没有删除的原 ...
- loj#2128. 「HAOI2015」数字串拆分 矩阵乘法
目录 题目链接 题解 代码 题目链接 loj#2128. 「HAOI2015」数字串拆分 题解 \(f(s)\)对于\(f(i) = \sum_{j = i - m}^{i - 1}f(j)\) 这个 ...
- Python3内置函数——reversed() = 翻转我的世界
认识reversed单词 reversed 英[rɪ'vɜ:st] 美[rɪ'vɜst] adj. 颠倒的:相反的:(判决等)撤销的 v. 颠倒(reverse的过去式和过去分词):翻转 help(r ...
- 潭州课堂25班:Ph201805201 并发 第九课 (课堂笔记)
TCP/IP 1,建立连接(三次握手) 1,客户端发起请求 2,服务器请求回应 3,请求确认,双方建立连接 2,数据传输 3,断开连接(四次挥手) 1,客户端请求断开 连接 2,服务器回应请求 3,服 ...