CollectionView就是这么简单!】的更多相关文章

UICollectionView 和 UICollectionViewController 类是iOS6 新引进的API,用于展示集合视图,布局更加灵活,可实现多列布局,用法类似于UITableView 和 UITableViewController 类. 使用UICollectionView 必须实现UICollectionViewDataSource,UICollectionViewDelegate,UICollectionViewDelegateFlowLayout这三个协议. 1.首先我…
1. 动画需要获取当前的 Cell ,下面的调用在 viewDidLoad 中,有时候返回 nil,有时候成功. UICollectionView *cell = (UICollectionView*)[self.collectionView cellForItemAtIndexPath:indexPath]; 简单的解决方法,是在调用之前添加 [self.collectionView layoutIfNeeded]; 原因是,根据苹果开发者文档:UICollectionView如果 cell…
代码地址如下:http://www.demodashi.com/demo/11366.html 目录 UICollectionView的定义 UICollectionView快速构建GridView网格视图 UICollectionView拖拽重排处理(iOS8.x-/iOS9.x+) UICollectionView实现简单轮播 UICollectionView的定义 UICollectionView同UITableView一样,是iOS中最常用到数据展示视图. 官方定义: An object…
前言: 这篇你可以学会自定义视图,创建collectionView,协议的使用,定时器; 自制图片 先上Demo:Github上封装好的下载即用, 好用请Star Thanks首先新建一个继承于UIView的视图, 且用collectionView实现所以需要签订两个协议代码如下: let sectionNum: Int = 100 // 区的数量 let width = UIScreen.mainScreen().bounds.size.width // 屏幕宽度 let height = U…
算法总体思路 先说一下总体上的思路.既然图片的大小.位置各不一样,我们很自然地会想到需要算出每个item的frame,然后把这些frame赋值给当前item的UICollectionViewLayoutAttributes. 自定义UICollectionViewLayout的关键两步是先后重载下面两个方法: - (void)prepareLayout; 和 - (NSArray *)layoutAttributesForElementsInRect:(CGRect)rect; 所以我们的思路是…
最近在项目中需要实现一个水平的瀑布流(即每个Cell的高度是固定的,但是长度是不固定的),因为需要重写系统 UICollectionViewLayout中的一些方法通过计算去实现手动布局,所以本着代码可复用的原则(其实就是懒,不想再写一遍而已--),干脆把水平和竖直模式都集成到一个文件中,通过protocol去控制瀑布流的显示模式. 首先我们需要了解一下UICollectionViewLayout是个啥玩意,为什么通过它可以进行瀑布流的实现呢?在苹果官方Api Reference中我们可以看到,…
因为程序要求要插入一个日历控件,该空间的要求是从当天开始及以后的六个月内的日历,上网查资料基本上都说只要获取两个条件(当月第一天周几和本月一共有多少天)就可以实现一个简单的日历,剩下的靠自己的简单逻辑就OK了,下面开始自己从开始到完成的整个过程 1,首先做NSDate类目,扩展一些方法让日期之间转换更加方便 #import <Foundation/Foundation.h> @interface NSDate (LYWCalendar) #pragma mark - 获取日 - (NSInte…
一直以来都想研究瀑布流的具体实现方法(起因是因为一则男女程序员应聘的笑话,做程序的朋友应该都知道).最近学习到了瀑布流的实现方法,瀑布流的实现方式有多种,这里应用collectionView来重写其UICollectionViewLayout进行布局是最为简单方便的.但再用其布局之前必须了解其布局原理.为方便大家学习理解此处补上demo地址https://github.com/PurpleSweetPotatoes/CollcetionViewLayout_demo 在这里笔者挑出其中较为重要的…
算法总体思路 先说一下总体上的思路.既然图片的大小.位置各不一样,我们很自然地会想到需要算出每个item的frame,然后把这些frame赋值给当前item的UICollectionViewLayoutAttributes. 自定义UICollectionViewLayout的关键两步是先后重载下面两个方法: - (void)prepareLayout; 和 - (NSArray *)layoutAttributesForElementsInRect:(CGRect)rect; 所以我们的思路是…
前言 UICollectionView是一种新的数据展示方式,简单来说可以把他理解成多列的UITableView(请一定注意这是UICollectionView的最最简单的形式).如果你用过iBooks的话,可能你还对书架布局有一定印象:一个虚拟书架上放着你下载和购买的各类图书,整齐排列.其实这就是一个UICollectionView的表现形式,或者iPad的iOS6中的原生时钟应用中的各个时钟,也是UICollectionView的最简单的一个布局. 基础知识 一.创建UICollection…
显示数据列表 大家通常使用的是UITableView 不用说TableView 是大家的首选.在iOS6之前这也是必选.但是伴随着APP的成长一起都在变化目前更多的呈现一种块状的显示效果.之前的行式显示效果大家都已见的太多了.接下来大家和我一起来看看另外的一种控件 - UICollectionView 1.实例化2.自动布局3.横向4.纵向5.协议6.Cell 一.实例化   UICollectionView 的实例化和其它控件存在一个不同的地方.   init   initWithFrame:…
最近要研究下排布的游戏关卡界面的实现,简单做了个UICollectionView的demo. 先看最后的效果: 下面来看实现的方法把,在Storyboard对应的ViewController中增加一个UICollectionView控件,然后再其中加入一个CollectionViewCell 在其中增加一个Label控件 注意,下面对这个Cell进行命名,命名成defaultCell, 这样我们UI层面的工作就结束了. 代码部分: 首先我们需要了解两个类,UICollectionViewData…
1.前言 了解了简单图文混排 (属性字符串的使用)及 正则表达式的部分知识,为了加深印象,写了个简单表情键盘demo 展示文字用的是 UITextView 由于时间匆忙,存在一些bug,以及不完善的地方,仅作为小demo 练习一下 图文混排可以用 TextKit ,下次有时间学习下 环境 xcode 7.3 , swift 2.3 2.效果 3.表情键盘相关 Emoticons.bundle 资源包来源于网络 设计好模型 如(EmoticonPackage.EmoticonItem) class…
原文:UICollectionViews Now Have Easy Reordering 我是UICollectionView的忠实粉丝.这个类比起它的老哥UITableView类具有更高的可定制性.现在我用collection view的次数要比用table view还多.随着iOS9的到来,它支持简单的重排.在此之前,重排不可能有现成的方法,同时这样做也是件痛苦的工作.现在让我们来看看API,你可以在GitHub找到相应的Xcode工程. 添加简单重排的最简单的方式是用UICollecti…
修复了拖拽滚动时抖动的一个bug,新增编辑模式,进入编辑模式后不用长按触发手势,且在开启抖动的情况下会自动进入抖动模式,如图: test.gif 图1:垂直滚动 drag1.gif 图2:水平滚动 drag2.gif 图3:配合瀑布流(我直接使用了上个项目的瀑布流模块做了集成实验) drag5.gif 我将整个控件进行了封装,名字是XWDragCellCollectionView使用起来非常方便,github地址:可拖拽重排的CollectionView;使用也非常简单,只需3步,步骤如下: 1…
最近项目上要实现一个效果,先把效果图摆上来吧: 刚看到效果图的时候  我觉得很简单  用UICollectionview就可以了 但是后来发现collectionview只有两种布局方式  比较单一 : 箭头代表滑动方向 或者            需求效果图: 方法:要实现刚才那个效果方法可能有很多解决方案  比如说重写UICollectionViewFlowLayout等方法 但这次用的方法相比于自定义UICollectionViewFlowLayout我觉得要简单一点那就是在添加一个scr…
最近学习到了瀑布流的实现方法,瀑布流的实现方式有多种,这里应用collectionView来重写其UICollectionViewLayout进行布局是最为简单方便的.但再用其布局之前必须了解其布局原理. 在这里笔者挑出其中较为重要的几个方法来进行讲解. 1.- (BOOL)shouldInvalidateLayoutForBoundsChange:(CGRect)newBounds 当collectionView视图位置有新改变(发生移动)时调用,其若返回YES则重新布局 2.- (void)…
来源:wazrx 链接:http://www.jianshu.com/p/8f0153ce17f9 写在前面 这段时间都在忙新项目的事儿,没有时间倒腾,这两天闲下来,想着一直没有细细的研究CollectionView,一般最多用来做点循环滚动,所以花时间深入学习了一些东西,这次实现了CollectionView的拖动重排的效果,先请看图:(吐槽:不知道为啥从xcode7开始,模拟器变得很卡很卡,所以截图的效果不好,大家可以在真机上测试,效果还是非常不错的) 2月27日更新: 修复了拖拽滚动时抖动…
collection view(UICollectionView对象)使用灵活和可扩展的布局来描述有序的数据项,其一般情况下以网格的形式来展示内容,但并非一定如此. 1 基础 为了将数据展示在屏幕中,Collection View需要搭配其它多种对象,其中有些是用户可选对象,而有些则是必须使用类型. 1.1 配合对象 collection views的设计思想与table view的设计思想类似,都是将数据与展示分开,并且也涉及data source和delegate等多种类型,如表 11所示,…
UIColletionView 这篇只是做UIColletionView的常用属性.代理方法和数据源方法的备忘,之后做一些自定义布局,增加删除动画等. UIColletionViewFlowLayout的常用属性和UIColletionView的常用属性方法 // 创建布局类 let layout = UICollectionViewFlowLayout() layout.itemSize = CGSizeMake(50.0, 50.0) layout.headerReferenceSize =…
和表格视图类似 UICollectionView的使用有两种方法 一种是继承UICollectionViewController,这个Controller会自带一个UICollectionView. 第二种是创建一个UIConllectionView 视图放在普通的UIViewController里面. 我们用另外一种 首先声明先声明一个重用标示  和实现托付 #define _CELL @"acell" @interface yxpViewController ()<UICol…
转载自:http://www.cnblogs.com/tmf-4838/p/5361271.html #import "ViewController.h" #import <ImageIO/ImageIO.h> #import "UIImageView+WebCache.h" @interface ViewController ()<UICollectionViewDataSource, UICollectionViewDelegate, UICo…
#import "ViewController.h" #import <ImageIO/ImageIO.h> #import "UIImageView+WebCache.h" @interface ViewController ()<UICollectionViewDataSource, UICollectionViewDelegate, UICollectionViewDelegateFlowLayout> // 数据源 @property…
你项目中要用到它吗? 可能会在你的项目中用到这玩意,最近也是要用就简单的写了一个 Demo.没多少代码,就不放Git了,下面会详细点的说说代码的,要还有什么问题的小伙伴可以直接Q我,也可以把Demo发给你,这里有Q可以找一下加我 多多交流,互相学习! 下面是简单的一个效果图,先给看看效果图! 先说说控制器里面的代码,控制器里面就是我们的  UICollectionView  的一些基本的创建了.其实它和 UITableView 相比较的话,但从创建使用看的话,是挺相似的,但其实它真的比 UITa…
今天博客中,我们就来实现一下一些常用资讯类App中常用的分类选择的控件的封装.本篇博客中没有使用到什么新的技术点,如果非得说用到了什么新的技术点的话,那么勉强的说,用到了一些iOS9以后UICollectionView添加的一些新的特性.本篇博客所涉及的技术点主要有UICollectionView的Cell移动,手势识别,控件封装,闭包回调,面向接口编程,Swift中的泛型等等.这些技术点在之前的博客中也多次使用到,只不过本篇博客使用这些技术点来完成我们的具体需求. 一.实例运行效果 先入为主,…
两个 TableView 之间的联动, TableView 与 CollectionView 之间的联动 这是一个创建于 359 天前的主题,其中的信息可能已经有所发展或是发生改变. [联动] :两个 TableView 之间的联动, TableView 与 CollectionView 之间的联动 前言 现在市面上有很多 app 都有联动功能,有的是两个 TableView 之间的联动,比如美团外卖,百度外卖,饿了么等等.有的是 TableView 与 CollectionView 之间的联动…
简单集成高大上的ImagePicker无标题文章   现在是个项目就要有图片上传所以下面介绍一下简单高端的图片选择器 感谢读者的细心发现bug,最近bug已经修复(github更新)所以对文章部分内容做出修改. 然后看一下实现代码 和效果图对比你就知道绝对可以带你装b带你飞! B4F25DEC157D88BE0026E2246BB3445A.png 7D1EE10E2E807ED40427A9637211424B.jpg 8C2FC9D402191A7AD594F40FBA5AF23B.png…
原文:谈谈WPF中的CollectionView与CollectionViewSource (1) 谈谈WPF中的CollectionView与CollectionViewSource (1)                           周银辉 1,CollectionView是什么? 事实上当你将后台数据列表绑定到一个列表控件时,WPF为了默默地在数据列表和列表控件之间增加了层称为CollectionView(列表视图)的东西,其支持很多高级操作,比如排序,分组,过滤等.这样我们就可以…
代码地址如下:http://www.demodashi.com/demo/13213.html 一.前言 我是UICollectionView的忠实粉丝.这个类比起它的老哥UITableView类具有更高的可定制性.现在我用collection view的次数要比用table view还多.随着iOS9的到来,它支持简单的重排.在此之前,重排不可能有现成的方法,同时这样做也是件痛苦的工作.现在让我们来看看API,你可以在下载本项目源码,看具体的实现过程. 二.实现过程 添加简单重排的最简单的方式…
摘要 UICollectionView是比UITableView更加复杂的UI控件,通过它可以实现许多复杂的流布局.但对我们来说,系统提供的接口十分简单易用,并且有十分强的制定性. iOS流布局UICollectionView系列一——初识与简单使用UICollectionView 一.简介 UICollectionView是iOS6之后引入的一个新的UI控件,它和UITableView有着诸多的相似之处,其中许多代理方法都十分类似.简单来说,UICollectionView是比UITbleVi…