【iOS开发每日小笔记(二)】gitHub上的开源“瀑布流”使用心得

这篇文章是我的【iOS开发每日小笔记】系列中的一片,记录的是今天在开发工作中遇到的,可以用很短的文章或很小的demo演示解释出来的小心得小技巧。它们可能会给用户体验、代码效率得到一些提升,或是之前自己没有接触过的技术,很开心的学到了,放在这里得瑟一下。90%的作用是帮助自己回顾、记忆、复习。

 

产品今天提出了需求变更,希望某个界面换成瀑布流的形式来展现。其实从我个人而言,我对大多说文艺的东西持有保(鄙)留(视)意见。“矫揉造作”是我脑海里出现的一个词,不过,考虑到很大一部分人有文艺装逼需求,且存在即有合理性,那么我也不对瀑布流说三道四了。端正态度,海纳百川,正好也来学习一下这畸形的瀑布流到底如何快速实现。

首先我自己分析了一下,思路有二:1,在ScrollView上,自己进行subView的布局。但重用得自己实现;2,利用几个TableView拼接,但没尝试过,不知道可行性大不大。

时间有限,还是网上找找思路吧!

发现有像这种http://www.cnblogs.com/monicaios/p/3530516.html 洋洋洒洒一大篇作介绍的。主要说的是,自己从零开始如何去设计一个瀑布流,由于我需要快速实现的方法,故pass。没细看,不知到这篇博文到底含金量多少。

最终选择了gitHub上面开源的TMQuiltView,老外写的东西还是比较靠谱,在这里http://www.oschina.net/question/100267_66491 和这里 http://blog.csdn.net/shenjx1225/article/details/9037631 可以看到中国人写的使用方法和功能介绍,呵呵。

GitHub上的地址是https://github.com/1000Memories/TMQuiltView 里面有个demo,使用应该说非常简单。

但是要注意版本里有个bug,cell重用的时候,划出去的cell有时会没有重绘而导致消失,有大神给出了解决方法,在这里:https://github.com/pawartur/TMQuiltView/commit/2cd1a3eaa6ad4b149dd5b4c69513dd254cf76dca#diff-c6c5ddf6f9b5b2a32852e8233c30ef9aR428

使用效果我就不写出来了,真的是“好用又简单”。

有机会有时间,我再在【iOS探究】里做“探究”吧,哈哈。

 

转载于:https://www.cnblogs.com/pigpigDD/p/3906099.html

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

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

相关文章

spring mvc 入门DispatcherServlet转发

目录一&#xff0c;配置相关二&#xff0c;java类测试三&#xff0c;测试一&#xff0c;配置相关 maven坐标依赖 <dependencies><!-- spring context --><dependency><groupId>org.springframework</groupId><artifactId>spring-context&…

web音乐播放器+后台歌曲,歌单管理

项目地址 https://github.com/sevenyoungairye/web_music_palyer技术点 - 基于h5, css3, js, bootstarp, jquery,- 后台基于structs1, spring, spring-jdbcTemplate功能 - 用户curd- 歌单curd&#xff0c;为歌单新增&#xff0c;移除歌曲- 上传歌曲&#xff0c;修改歌曲- 查询…

Oracle WorkFlow(工作流)(一)

转载自:http://hi.baidu.com/quce227/item/3dee702c66466a0343634a58 1概述 1.1工作流的概念 Workflow是EBS的基础架构技术之一&#xff0c;系统中大部分流程性的通知和审批控制、账户按规则自动生成都是通过Workflow实现的1.2工作流的目的 1&#xff0e; 在业务流程中发送、提…

spring mvc框架请求注解解析,内部资源视图解析器

请看spring DispatcherServlet入门 目录1. RequestMapping2. InternalResourceViewResolver1. RequestMapping 作用&#xff1a;用于建立请求url和处理请求方法之间的对应关系 位置&#xff1a;类上&#xff0c;请求url的第一级访问目录。此处不写的话&#xff0c;相当于应用的…

boot-1学习

Bootstrap-1学习Bootstrap介绍一. 响应式布局(css3的技术)1. 什么是响应式2. 响应式网页必要的要求3.移动设备的适配 --视口-- 这部分在pc端上没用二.Bootstrap1.起步2.全局cssBootstrap介绍 bootrap简称boot,是一个简洁的,直接的,强悍的,直接的一个框架,这是官方对它的描述.主…

UNIX时间戳及日期的转换与计算

UNIX时间戳是保存日期和时间的一种紧凑简洁的方法&#xff0c;是大多数UNIX系统中保存当前日期和时间的一种方法&#xff0c;也是在大多数计算机语言中表示日期和时间的一种标准格式。以32位整数表示格林威治标准时间&#xff0c;例如&#xff0c;使用证书11230499325表示当前时…

spring mvc响应数据方式

目录1. 页面跳转2. 回写数据ResponseBody注解1. 页面跳转 转发&#xff0c;如果有视图解析器&#xff0c;要写全路径/pages/success.jsp RequestMapping("/save4") public String save4(HttpServletRequest req) {req.setAttribute("key", "value 4…

boot栅格布局

栅格布局 使用boot必须熟练使用的三个知识点,媒体查询, 栅格布局,scss 为什么要使用栅格布局? 项目中做布局的方式 table布局csshtml布局栅格布局简单,容易控制语义正确,渲染效率高简单(类似于table)非常容易控制,渲染效率高,语义正确,支持响应式效率低,语义错误控制比较麻…

Math.random()

Math.random();Math.random()是令系统随机选取大于等于 0.0 且小于 1.0 的伪随机 double 值,[0,1)返回指定范围的随机数[m-n)的公式 &#xff1a;Math.random()*(n-m)m&#xff1b;返回指定范围的随机数[m-n](区间不同)的公式 &#xff1a;Math.random()*(n-m1)m&#xff1b;eg…

spring mvc 接收页面数据

目录1. 基本类型的数据封装2. pojo&#xff08;bean)类型的封装3. 数组类型4. list集合类型1. 基本类型的数据封装 //http://localhost:8080/spring_mvc_01/user/save8?namebitqian&age19 RequestMapping(value "/save8") ResponseBody public void save8(Str…

css样式引入的优先级

css样式引入的优先级 1 位于<head/>标签里的<style/>中所定义的CSS拥有最高级的优先权。2、第二级的优先属性由位于 <style/>标签中的 import 引入样式表所定义。3、第三级的优先属性由<link/>标签所引入的样式表定义。4、第四级的优先属性由<link…

前端学习(1182):差值表达式

插值表达式语法&#xff1a;{{}} 使用时请注意以下几点&#xff1a; 插值表达式是vue框架提供的【指令】 插值表达式中 不可以写代码片段 会报错 属性节点中不能使用插值表达式&#xff0c;如果要为元素节点动态绑定数据&#xff0c;我们要用v-bind动态绑定属性&#…

单片机的 FIFO循环队列实现

转自&#xff1a;单片机的FIFO(先入先出)循环队列实现 // // 文件&#xff1a;config.h // #ifndef __CONFIG_H #define __CONFIG_H //这一段无需改动 //This segment should not be modified #ifndef TRUE #define TRUE 1 #endif #ifndef FALSE #define FALSE 0 #endif type…

前端学习(1183):指令v-cloak

<!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title><!-- v-cloak用法 -->&…

mvc自定义日期转换器

1. 配置编码过滤器 1&#xff0c; web.xml中设置配置spring mvc提供的编码过滤器&#xff0c;解决get/post提交过来的数据乱码问题 <!--配置编码过滤器--><filter><filter-name>characterEncodingFilter</filter-name><filter-class>org.spring…

link引入和@import的区别

本质上, 这两种方式都是加载CSS文件, 但还是存在着细微的差别 import 机制不同于link&#xff0c;link是加载页面前css加载完毕&#xff0c;import 是先读取文件再加载import是css2.0里的 ie5以上不支持用js控制dom时改变样式&#xff0c;只能用link&#xff0c;import不是dom…

重新理解javascript回调函数

把函数作为参数传入到另一个函数中。这个函数就是所谓的回调函数 经常遇到这样一种情况&#xff0c;某个项目的A层和B层是由不同的人员协同完成.A层负责功能funA,B层负责funcB。当B层要用到某个模块的数据,于是他对A层人员说,我需要你们提供满足某种需求的数据,你给我提供一个接…