objective-C CollectionView 加深(添加注册头部View)

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

#pragma marc 添加Collection
-(void)addConllectionView{//collection的布局方案UICollectionViewFlowLayout *collectionViewLayout=[[UICollectionViewFlowLayout alloc]init];//设置位置大小以及布局方案_myCollectionView=[[UICollectionView alloc]initWithFrame:CM(0, 0, VIEW_WIDTH,VIEW_HEIGHT-64-48) collectionViewLayout:collectionViewLayout];//CollectionView的背景颜色_myCollectionView.backgroundColor=[UIColor whiteColor];[self addSubview:_myCollectionView];//设置代理_myCollectionView.delegate=self;_myCollectionView.dataSource=self;//注册Cell 以及选择控制的类[_myCollectionView registerClass:[ExhibitionCollectionViewCell class] forCellWithReuseIdentifier:@"cell"];//注册Head以及Food 以及选择控制的类[_myCollectionView registerClass:[UICollectionReusableView class] forSupplementaryViewOfKind:UICollectionElementKindSectionHeader withReuseIdentifier:@"Head"];}
#pragma mark 设置Cell
-(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath{ExhibitionCollectionViewCell *cell=[_myCollectionView dequeueReusableCellWithReuseIdentifier:@"cell" forIndexPath:indexPath];cell.backgroundColor=[UIColor whiteColor];cell.imageView.image=[UIImage imageNamed:@"商品"];return cell;
}
#pragma mark 设置头部以及尾部
- (UICollectionReusableView *)collectionView:(UICollectionView *)collectionView viewForSupplementaryElementOfKind:(NSString *)kind atIndexPath:(NSIndexPath *)indexPath
{if ([kind isEqualToString:UICollectionElementKindSectionHeader]) {//和判断复用一样UICollectionReusableView * head = [collectionView dequeueReusableSupplementaryViewOfKind:UICollectionElementKindSectionHeader withReuseIdentifier:@"Head" forIndexPath:indexPath];//添加轮播图[head addSubview:_carouselFigureView];return head;}return nil;}
#pragma mark 设置Cell返回数量
-(NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section{return 20;
}
#pragma mark 定义展示的组数
-(NSInteger)numberOfSectionsInCollectionView:(UICollectionView *)collectionView
{return 1;
}#pragma mark 设置cell的大小
- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath
{return CGSizeMake(VIEW_WIDTH/3.55f, VIEW_HEIGHT/3.550f);}#pragma mark 设置每个section中不同的行之间的行间距
- (CGFloat)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout minimumLineSpacingForSectionAtIndex:(NSInteger)section
{return 20;
}
#pragma mark 设置每个section中不同的列之间的间距
- (CGFloat)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout minimumInteritemSpacingForSectionAtIndex:(NSInteger)section
{return 10;
}
#pragma mark 设置每个Cell的内边距
-(UIEdgeInsets)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout insetForSectionAtIndex:(NSInteger)section
{return UIEdgeInsetsMake(0, 0, 10, 0);//分别为上、左、下、右
}
#pragma mark 点击事件
- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath{CommodityDisplayControllerView * CDVC=[[CommodityDisplayControllerView alloc]init];[[self getController] presentViewController:CDVC animated:YES completion:nil];NSLog(@"%ld",indexPath.row);
}#pragma mark 返回头headerView的大小
-(CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout referenceSizeForHeaderInSection:(NSInteger)section{CGSize size={VIEW_WIDTH,IMG_EXHIBITION_HEIGHT};return size;
}


转载于:https://my.oschina.net/u/2483781/blog/645035

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/543540.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java如何实现乌龟爬行_请教:一只乌龟的运动

import java.awt.*;import java.awt.event.*;import java.util.EventListener;/*打算你按上,乌龟上爬,按下,乌龟下爬。但是一直没有repaint,怎么回事呀,请教下什么地方错了,怎么才能动。*/public class WuG…

Javascript中Base64编码解码的使用实例

Javascript为我们提供了一个简单的方法来实现字符串的Base64编码和解码,分别是window.btoa()函数和window.atob()函数。 1 var encodedStr window.btoa(“Hello world”); //字符串编码 2 var decodedStr window.atob(encodedStr); //字符串解码看下面的实例代…

java中创建窗口用的什么_JAVA 窗口的创建

奇了个怪了,没什么大问题。你在cmd里编译试试实在不行,加我QQ:656098987,帮你远程看看代码可以试试这么写import java.awt.Color;import java.awt.Image;import java.awt.Toolkit;import javax.swing.ImageIcon;import javax.swing.JFrame;im…

mysql安装前的系统准备工作(转)

一、系统环境总结: 二、安装yum源: 1、安装磁盘yum源: 一、安装xfs文件系统:1、配置yum源:(光盘)vi /etc/yum.repos.d/yum.repo[Server]nameserverbaseurlfile:///tmp/cddir/Server/enabled1gpg…

怎样与用户有效的沟通以获取用户的真实需求

访谈人员必须要站在用户的角度去与用户进行交谈,同时,在与用户交谈前,先要了解用户可能使用到的专业领域的专有名词,防止在交谈过程中用户的意思,导致双方所交谈的内容词不达意。在与用户的沟通中,软件开发…

layui常用的表单标签_Layui常用组件:表格(table)

快速使用添加删除编辑查看编辑删除layui.use([table], function () {table.render({elem: #demo,url: url//表格数据接口,toolbar: #toolbarDemo //开启头部工具栏,并为其绑定左侧模板,page:true//开启分页,loading:true//显示加载条,cols: [[{type: checkbox, fixe…

快递100推送服务

快递查询服务能做到这个程度,真是牛掰到极点了。 尊敬的快递100客户: 快递100推送服务已增加QQ推送功能,请尽快让贵司的技术人员升级您的程序: 请在订阅报文中增加以下字段和值,我们会免费会向贵司的买家的QQ号推送物流…

java代码中何处以main开始_自测题: Java 基础

1.19 自测题:什么是字节码?它对Java的Internet程序设计为何十分重要?字节码是一种高度优化的指令集,由Java虚拟机执行,可帮助Java获得可移植性和安全性面向对象程序设计的三个主要原则是什么?封装、多态性和继承Java程…

理解HTTP幂等性

2019独角兽企业重金招聘Python工程师标准>>> 理解HTTP幂等性 基于HTTP协议的Web API是时下最为流行的一种分布式服务提供方式。无论是在大型互联网应用还是企业级架构中,我们都见到了越来越多的SOA或RESTful的Web API。为什么Web API如此流行呢&#xff…

控件UI性能调优 -- SizeChanged不是万能的

简介 我们在之前的“UWP控件开发——用NuGet包装自己的控件“一文中曾提到XAML的布局系统 和平时使用上的一些问题(重写Measure/Arrange还是使用SizeChanged?),这篇博文就来为大家简单地描述一下XAML布局系统的行为,并…

java框架异常怎么处理_java异常处理与处理框架-笔记

1、Java异常分为checked异常和unchecked异常checked异常(需要在代码中try……catch显示捕获)所有继承java.lang.Exception的异常。是可以在执行过程中恢复的。此类异常不是程序中可以预测的,比如无效的用户输入、文件不存在等。这些都是外在的原因,都不是…

自动化安装

自动化安装 流程设计 Cobbler ###########################物理机自动安装的流程############################### 1.采购--》验货--》签字,验货单,盖公章 2.资产管理:资产录入--》机房 区域 排 机柜 位置 配置 (资产管理&#…

mysql什么情况会刷脏页_mysql-刷脏页(12)

一,mysql因为WAL机制,在更新时,首先会更新内存,再写redo log。一般情况下是在空闲时,将redo log刷新到磁盘中。二,什么是脏页。当内存中与磁盘中的数据不一致时,内存中的数据页就称为脏页。(也可…

android 跨进程多实例播放demo

2019独角兽企业重金招聘Python工程师标准>>> 客户端进程需要实现,其中notify方法需要service 跨进程调用,通知客户端播放消息 IMediaPlayerClient.aidl package com.example.demo; import com.example.demo.ParcelableParcel; interface IM…

java npm install_npm install不构建供应商可执行文件

TL; DR:为什么npm不构建依赖项的二进制可执行文件,如何在没有显式构建它们的情况下构建它们?我的项目在常规的package.json中描述了它的依赖项 . 当我运行 npm install 时,所有软件包都按预期安装在node_modules中 . 但是&#xf…

JDBC第三次学习

这是我的JDBC第三次学习了,在学习的过程中,老是会忘掉一些知识,不记下笔记实在不行啊! 使用JDBC调用存储过程 (1)关于如何使用Navicat(11.1.13) for MySQL如何创建存储过程。我在另一篇文章写过,在此不赘述了。 使用Na…

java 获取service_Java service层获取HttpServletRequest工具类的方法

Java service层获取HttpServletRequest工具类的方法大家都知道 能在Controller/action层获取HttpServletRequest,但是这里给大家备份的是从代码内部service层获取HttpServletRequest工具类。具体如下:package com.base.common.sessionutils;import javax…

Linux使用jstat命令查看jvm的GC情况

2019独角兽企业重金招聘Python工程师标准>>> 命令格式 jstat命令命令格式: jstat [Options] vmid [interval] [count] 参数说明: Options,选项,我们一般使用 -gcutil 查看gc情况 vmid,VM的进程号&#x…

Java中lastValue_在Logstash中为sql_last_value使用表的ID?

我jdbc在logstash输入的插件中有这样的MySQL语句。statement > "SELECT * from TEST where id > :sql_last_value"我的表没有任何date或datetime字段。因此,我尝试通过使用来检查scheduler每一分钟,以更新索引,是否在表中添加…

ssm中java实现树状结构_java ssm使用递归写树形结构

实体类:private String dspId;private String parentId; //父类idprivate String dataName;private Integer sortingNumber;private String remarks;private Date createTime;private Date updateTime;private Date deleteTime;private Integer dataFlag;private Integer anId…