瀑布流布局原理(怎样看待现在网页设计中比较流行的瀑布流形式)

2025-03-04 19:20:03 0

瀑布流布局原理(怎样看待现在网页设计中比较流行的瀑布流形式)

本文目录

怎样看待现在网页设计中比较流行的瀑布流形式

适合于产品展示,不适合到处都用,是个很好的插件。瀑布流网页布局设计,现在有泛滥成灾之势,不过存在即合理,瀑布流为什么这么走俏,是因为它能满足用户的体验与需要。而对于瀑布流式布局,想必网页设计师们已不再陌生,随着pinterest自2011年开始走红,瀑布流式的布局被越来越多的网站所使用。国内的花瓣网、堆糖网、布兜、发现啦,美丽说,蘑菇街,人人逛街,凡客达人等,复制Pinterest的网站在中国蜂拥而现,粗略估计已有上百家之多。为什么选择瀑布流?对图片的展现高效有吸引力既然pinterest式蜂拥而现,我们先从体验角度看,瀑布流布局为什么好?笔者浅见。随着读图时代快餐式消费的来临,瀑布流对于图片的展现,是高效而具有吸引力的,用户一眼扫过的快速阅读模式可以在短时间内获得更多的信息量,而瀑布流里懒加载模式又避免里用户鼠标点击的翻页操作,这么浏 览起来,随着鼠标的滚动,是不是最小的操作成本能获得做多的内容体验,是不是比较容易沉浸其中,不被打断。有没有逛起街来边走边看,被琳琅满目的商品吸引 的感觉呢?除此之外,瀑布流的主要特性便是错落有致,定宽而不定高的设计让页面区别于传统的矩阵式图片布局模式,巧妙的利用视觉层级,视线的任意流动又缓解了视觉疲劳。PinterestPinterest于2011年诞生,如今每月独立访问用户数量已突破1100万,平均每位用户每月在网站上逗留98分钟,这一时长在诸多社交平台中仅次于Tumblr和Facebook。Pinterest作为瀑布流布局的鼻祖,必然引导瀑布流设计的方向。吸顶式导航为什么使用吸顶式导航呢?用户在瀑布流模式下一目十行去浏览,如果快速切换到分类,又要回到顶部,然后再选取分类,吸顶式导航可以让用户轻松切换分类,设计要点,吸顶式导航不可以太宽,色彩上不可以太抢眼,只需要保证用户在需要时,它悄悄的在就可以。2.评论的锚点定位pinterest起初设计是评论框全部默认展示的, 意在鼓励用户输入评论。而在最近的改版中,pinterest的评论框的设计改为:当图片和已有评论长度较小时,评论框默认收起,点击评论的操作 button后,锚点定位到评论框,同时光标闪动,提示用户输入文字。而图片和已有评论较长时(接近或大于一屏的高度),默认评论框打开,因为用户如果靠 评论的button打开评论框需要回滚较多距离,成本太高。3.轻巧的点击查看大图设计点击空白区域收起,再次点击大图跳转到图片来源网站。非常适合轻松随意的阅读尤其是当用户适应此处的设计逻辑后,很容易产生沉浸式浏览,同时又满足了查看细节的需要。4.占位加载,保持视觉体验的顺畅用户在不断滚动鼠标滚轮浏览的过程中,网速并不总是尽如人意的,因此采用占位加载形式(预加载出图片高度的灰度图),不让加载过程中画面过于跳动,可以让用户视觉体验平缓些,视觉过度流畅,尽量小的干扰用户浏览的行为。

如何在listview的item中内嵌瀑布流哦

那么本篇文章是我们ListView系列三部曲的最后一篇,在这篇文章当中我们将对ListView进行功能扩展,让它能够以瀑布流的样式来显示数据。另外,本篇文章的内容比较复杂,且知识点严重依赖于前两篇文章,如果你还没有阅读过的话,强烈建议先去阅读 Android ListView工作原理完全解析,带你从源码的角度彻底理解 和 Android ListView异步加载图片乱序问题,原因分析及解决方案 这两篇文章。一直关注我博客的朋友们应该知道,其实在很早之前我就发布过一篇关于实现瀑布流布局的文章,Android瀑布流照片墙实现,体验不规则排列的美感。但是这篇文章中使用的实现算法比较简单,其实就是在外层嵌套一个ScrollView,然后按照瀑布流的规则不断向里面添加子View,原理如下图所示:虽说功能是可以正常实现,但是这种实现原理背后的问题太多了,因为它只会不停向ScrollView中添加子View,而没有一种合理的回收机制,当子View无限多的时候,整个瀑布流布局的效率就会严重受影响,甚至有可能会出现OOM的情况。而我们在前两篇文章中对ListView进行了深层次的分析,ListView的工作原理就非常巧妙,它使用RecycleBin实现了非常出色的生产者和消费者的机制,移出屏幕的子View将会被回收,并进入到RecycleBin中进行缓存,而新进入屏幕的子View则会优先从RecycleBin当中获取缓存,这样的话不管我们有多少条数据需要显示,实际上屏幕上的子View其实也就来来回回那么几个。那么,如果我们使用ListView工作原理来实现瀑布流布局,效率问题、OOM问题就都不复存在了,可以说是真正意义上实现了一个高性能的瀑布流布局。原理示意图如下所示:OK,工作原理确认了之后,接下来的工作就是动手实现了。由于瀑布流这个扩展对ListView整体的改动非常大,我们没办法简单地使用继承来实现,所以只能先将ListView的源码抽取出来,然后对其内部的逻辑进行修改来实现功能,那么我们第一步的工作就是要将ListView的源码抽取出来。但是这个工作并不是那么简单的,因为仅仅ListView这一个单独的类是不能够独立工作的,我们如果要抽取代码的话还需要将AbsListView、AdapterView等也一起抽取出来,然后还会报各种错误都需要一一解决,我当时也是折腾了很久才搞定的。所以这里我就不带着大家一步步对ListView源码进行抽取了,而是直接将我抽取好的工程UIListViewTest上传到了CSDN,大家只需要点击 这里 进行下载就可以了,今天我们所有的代码改动都是在这个工程的基础上进行的。另外需要注意的是,为了简单起见,我没有抽取最新版本的ListView代码,而是选择了Android 2.3版本ListView的源码,因为老版本的源码更为简洁,方便于我们理解核心的工作流程。

瀑布流是什么

瀑布流,又称瀑布流式布局。是比较流行的一种网站页面布局,视觉表现为参差不齐的多栏布局,随着页面滚动条向下滚动,这种布局还会不断加载数据块并附加至当前尾部。最早采用此布局的网站是Pinterest,逐渐在国内流行开来。国内大多数清新站基本为这类风格。特点:1、琳琅满目:整版以图片为主,大小不一的图片按照一定的规律排列。2、唯美:图片的风格以唯美的图片为主。3、操作简单:在浏览网站的时候只需要轻轻滑动一下鼠标滚轮,一切的美妙的图片精彩便可呈现在你面前。有一个软件叫瀑布流。

求教 android瀑布流该如何实现

网上关于android瀑布流的例子一大堆,但是很多都是很复杂,对于新手来说有一定的难度。原理很简单,就是异步下载图片,把图片addView到ScrollView(因为可以上下一直拖动)中,你需要屏幕显示几列就在ScrollView中放置几个LinearLayout,下面我就一个简单的例子来讲解android瀑布流的用法,样子很丑就不上图了。。1、在xml布局文件:很简单就是2、在java代码中:先声明几个变量,其中imagePathStr数组用来存图片的链接private LinearLayout leftLayout;private LinearLayout rightLayout;private String imagePathStr = { “http://www.cf69.com/Upfiles/BeyondPic/2010-08/20108175740983313.jpg“,“http://www.syfff.com/UploadFile/pic/2008122163204.jpg“, “http://pic.newssc.org/0/10/34/32/10343297_564251.jpg“,“http://ent.hangzhou.com.cn/images/20090311/zym2009031323.jpg“, “http://a4.att.hudong.com/86/60/01300000013093119087608457965.jpg“,“http://file.sdteacher.gov.cn/upload/gz0901/images/0907/22/110437191.jpg“,“http://www.fun9.cn/uploadfile/starpic/uploadpics/200910/20091008090155126.jpg“,“http://img3.yxlady.com/yl/UploadFiles_5361/20110820/20110820120609469.jpg“,其次,在oncreate()中采用异步加载图片的方法把获取到的Drawable添加到左右两栏的LinearLayout中:

Pinterest 瀑布布局是怎么实现的

jQuery 有一个插件,叫 jQuery Masonry 可以轻松地将默认 inline-block 布局的页面块转化瀑布流格式,只需要一行代码,可以实现很多种形式的瀑布流。所以,如果不关心底层的实现原理,会用它就足够了。

什么叫瀑布流

瀑布流,又称瀑布流式布局。是比较流行的一种网站页面布局,视觉表现为参差不齐的多栏布局,随着页面滚动条向下滚动,这种布局还会不断加载数据块并附加至当前尾部。

优点:

  • 有效的降低了界面复杂度,节省了空间:我们不再需要臃肿复杂的页码导航链接或按钮了。

  • 对触屏设备来说,交互方式更符合直觉:在移动应用的交互环境当中,通过向上滑动进行滚屏的操作已经成为最基本的用户习惯,而且所需要的操作精准程度远远低于点击链接或按钮。

  • 更高的参与度:以上两点所带来的交互便捷性可以使用户将注意力更多的集中在内容而不是操作上,从而让他们更乐于沉浸在探索与浏览当中。

iOS 瀑布流的布局中如何重写返回页眉页脚的方法

一直以来都想研究瀑布流的具体实现方法(起因是因为一则男女程序员应聘的笑话,做程序的朋友应该都知道)。最近学习到了瀑布流的实现方法,瀑布流的实现方式有多种,这里应用collectionView来重写其UICollectionViewLayout进行布局是最为简单方便的。但再用其布局之前必须了解其布局原理。  在这里笔者挑出其中较为重要的几个方法来进行讲解。1.- (BOOL)shouldInvalidateLayoutForBoundsChange:(CGRect)newBounds 当collectionView视图位置有新改变(发生移动)时调用,其若返回YES则重新布局2.- (void)prepareLayout 准备好布局时调用。此时collectionView所有属性都已确定。读者在这里可以将collectionView当做画布,有了画布后,我们便可以在其上面画出每个item3.- (NSArray *)layoutAttributesForElementsInRect:(CGRect)rect 返回collectionView视图中所有视图的属性(UICollectionViewLayoutAttributes)数组4.- (UICollectionViewLayoutAttributes *)layoutAttributesForItemAtIndexPath:(NSIndexPath *)indexPath 返回indexPath对应item的属性5.- (CGSize)collectionViewContentSize 设置collectionView的可显示范围这些方法中最重要的便是3,4方法,在3方法中返回所有视图属性数组,并根据这些属性进行布局,而4方法则返回每个item的属性,我们则在这里设置每个item的属性(主要是frame),就可以让collectionView按照我们的意愿进行布局了!(在这里我们不需要用到1方法,若item属性根据滑动改变,此时就需要随时进行布局改变)附上出处链接:http://www.tools138.com/create/article/20150924/020025635.html

瀑布流布局原理(怎样看待现在网页设计中比较流行的瀑布流形式)

本文编辑:admin

更多文章:


软件配置管理论文(软件测试  毕业论文)

软件配置管理论文(软件测试 毕业论文)

本文目录软件测试 毕业论文求一篇服务器配置与管理的论文!3000字即可!求CMM与软件项目管理论文,最好有几份软件配置管理计划书软件测试 毕业论文搜一个给你参考一下:软件测试从零开始引言 几年前,从学校毕业后,第一份工作就是软件测试。那

2025年3月6日 18:00

workstation服务启动不了(我的电脑为win10 专业版,但是网络ID为灰色不可用,workstation服务启动不了,怎么办,求大神)

workstation服务启动不了(我的电脑为win10 专业版,但是网络ID为灰色不可用,workstation服务启动不了,怎么办,求大神)

本文目录我的电脑为win10 专业版,但是网络ID为灰色不可用,workstation服务启动不了,怎么办,求大神win7共享设置打开文件夹共享后自动关闭,发现是workstation服务打不开,解决不了Windows无法启动 VMware

2025年3月20日 15:50

家装循环水系统有什么作用?火力发电的循环水系统非常重要,都包含什么设备

家装循环水系统有什么作用?火力发电的循环水系统非常重要,都包含什么设备

本文目录家装循环水系统有什么作用火力发电的循环水系统非常重要,都包含什么设备请问热水器循环水系统是怎么回事循环水系统都有哪几种呢发动机的循环水系统是起什么作用循环水系统中存在哪些危害循环水的家用循环水系统是什么循环水怎么做不用电 的自动循环

2025年4月3日 19:50

tensorflow是什么(关于tensorflow程序中什么计算使用cpu,什么计算使用gpu)

tensorflow是什么(关于tensorflow程序中什么计算使用cpu,什么计算使用gpu)

本文目录关于tensorflow程序中什么计算使用cpu,什么计算使用gpuTensorFlow掌握到什么程度,可以在简历上面写熟悉TensorFlow关于tensorflow程序中什么计算使用cpu,什么计算使用gpuTensorflow

2025年2月17日 22:10

showmodaldialog(如何获取window.showmodaldialog的参数)

showmodaldialog(如何获取window.showmodaldialog的参数)

本文目录如何获取window.showmodaldialog的参数windows.showmodaldialog 是什么请求showmodaldialog老出现滚动条是怎么回事直接用浏览器打开不会如何关闭showModalDialog窗口s

2025年3月24日 23:40

bullets(子弹bullet这个单词应该怎么读)

bullets(子弹bullet这个单词应该怎么读)

本文目录子弹bullet这个单词应该怎么读Augustana的《Bullets》 歌词子弹bullet这个单词应该怎么读谐音是 不理 bullet 英 复数:bulletsAugustana的《Bullets》 歌词歌曲名:Bullet

2025年3月27日 14:10

xml文件是什么语言(xml是什么文件)

xml文件是什么语言(xml是什么文件)

本文目录xml是什么文件XML是一种什么语言可以做些什么xml文件是什么xml文件是干什么的xml是什么文件XML是可扩展标记语言(Extensible Markup Language,XML)缩写,用于标记电子文件使其具有结构性的标记语言

2025年2月20日 13:50

phpstorm怎么用(最近在自学php,下载了个JetBrains PhpStorm,Wampserver64和MySQLWorkbench,但是不知道怎么用)

phpstorm怎么用(最近在自学php,下载了个JetBrains PhpStorm,Wampserver64和MySQLWorkbench,但是不知道怎么用)

本文目录最近在自学php,下载了个JetBrains PhpStorm,Wampserver64和MySQLWorkbench,但是不知道怎么用phpstorm如何调用数据库phpstorm如何直接在控制台中调试不用每次都打开浏览器phps

2025年3月26日 23:00

shark吸尘器(吸尘器十大品牌中Shark吸尘器能排到第几)

shark吸尘器(吸尘器十大品牌中Shark吸尘器能排到第几)

本文目录吸尘器十大品牌中Shark吸尘器能排到第几吸尘器有必要买吗买的话Shark吸尘器怎么样吸尘器什么牌子好美国Shark吸尘器怎么样吸尘器有必要买吗想知道shark吸尘器的除螨功能好用吗戴森吸尘器和Shark吸尘器,哪个品牌好些Shar

2025年3月18日 19:20

onmouse(onmouse的属性有哪个可以实现按下去的效果 比如onmouseover就是经过的效果 onmouseout就是离开的效果)

onmouse(onmouse的属性有哪个可以实现按下去的效果 比如onmouseover就是经过的效果 onmouseout就是离开的效果)

本文目录onmouse的属性有哪个可以实现按下去的效果 比如onmouseover就是经过的效果 onmouseout就是离开的效果onmousedown和o’clock 什么区别onmouse的属性有哪个可以实现按下去的效果 比如onmo

2025年2月21日 15:10

fidel是什么意思?FidelCastro是什么意思

fidel是什么意思?FidelCastro是什么意思

本文目录fidel是什么意思FidelCastro是什么意思fidel是什么意思field英 n. 领域;牧场;旷野;战场;运动场adj. 扫描场;田赛的;野生的vt. 把暴晒于场上;使上场vi. 担任场外队员n. (Field)人名;(英

2025年2月21日 09:50

暴力破解压缩包密码(怎么破解压缩包)

暴力破解压缩包密码(怎么破解压缩包)

本文目录怎么破解压缩包winrar加密现在可以破解了吗(暴力破解除外)怎么破解压缩包网上很多用ARPR的,毕竟是暴力破解,成功率并不高。复杂密码更是没法破解。除了这种暴力破解,我个人还真就没见过能破解rar密码的。压缩时候密码设置复杂些,没

2025年2月14日 13:00

corsair内存条(请问一下美商海盗船内存条好不好)

corsair内存条(请问一下美商海盗船内存条好不好)

本文目录请问一下美商海盗船内存条好不好海盗船16gddr4内存条怎么样请问一下美商海盗船内存条好不好这个还是要看个人对内存的要求。美商海盗船可是老牌子了,就是专门致力于为发烧型玩家服务,它的内存显然是更大、更稳定的。玩那些对内存要求大的网游

2025年3月25日 08:50

有没有比较好的少儿编程教育机构?太原的少儿编程的机构有推荐吗

有没有比较好的少儿编程教育机构?太原的少儿编程的机构有推荐吗

本文目录有没有比较好的少儿编程教育机构太原的少儿编程的机构有推荐吗在线学少儿编程哪个好靠谱的少儿编程机构有哪些有没有比较好的少儿编程教育机构尽量不要找线上的机构,小孩子学编程这方面的,还是需要线下的参与比较好。学少儿编程可以提高孩子逻辑思维

2025年2月16日 11:10

敏捷开发是什么求回答?身为程序员怎么能不懂什么是敏捷开发

敏捷开发是什么求回答?身为程序员怎么能不懂什么是敏捷开发

本文目录敏捷开发是什么求回答身为程序员怎么能不懂什么是敏捷开发软件开发是什么,发展如何敏捷开发是什么求回答一下完全属于个人思路,仅供参考敏捷开发是一种开发方式,我们现在采用的开发方式多数都采用瀑布式。敏捷开发其实将每个成员都积极调动起来。但

2025年3月14日 12:30

第一ppt网课件下载(什么网可以下载一年级学习资料)

第一ppt网课件下载(什么网可以下载一年级学习资料)

本文目录什么网可以下载一年级学习资料网页中的ppt课件如何下载什么网可以下载一年级学习资料想要下载小学数学免费课件,我有以下三个渠道推荐:第一个:公众号现在做资源公众号的很多,老师自己应该也通过各种各样的渠道关注不少这样的号,但是这些号都有

2025年3月5日 15:50

网络数据库有哪些(内存数据库有哪些)

网络数据库有哪些(内存数据库有哪些)

本文目录内存数据库有哪些目前主要用的数据库有哪些内存数据库有哪些内存数据库是相对于磁盘数据库来说的。我们都知道我们经常使用的关系型数据库,比如MySQL,它的数据文件最终是存储到磁盘上的。而内存数据库则是将所有的数据存储在内存中,磁盘和内存

2025年2月22日 14:00

android开发实例源代码(谁有android应用程序开发实例代码或者在哪儿可以下载到完整的代码)

android开发实例源代码(谁有android应用程序开发实例代码或者在哪儿可以下载到完整的代码)

本文目录谁有android应用程序开发实例代码或者在哪儿可以下载到完整的代码谁有android应用案例开发大全源代码开发一个简易的计算器APP程序 Android源代码Android开发,怎么看源代码谁有android应用程序开发实例代码或

2025年3月13日 16:00

relate的名词(relate的名词词性)

relate的名词(relate的名词词性)

本文目录relate的名词词性relate和relative这两个单词之间有关系吗relate与corelate的区别关于relate的用法relate的名词词性你好,很高兴在这里回答你的问题:.relative 英 关系词;亲缘植物

2025年2月14日 03:50

javascript与java的区别(javascript和java什么区别)

javascript与java的区别(javascript和java什么区别)

本文目录javascript和java什么区别Java和javascript语言有什么区别javascript和java什么区别首先,这两个家伙没有任何的血缘关系,java是是由Sun 公司于1995年5月推出的,而javascript是于

2025年2月16日 18:10

近期文章

java 数组(Java数组)
2025-04-05 09:40:02
mfc指的是什么?mfc是什么
2025-04-05 09:30:02
本站热文

harbor,port,pier的区别?谁能解释“harbour“(港口)与“pier“(码头)的区别
2025-02-22 17:40:03 浏览:18
ibatis foreach(ibatis 批量update操作)
2025-02-10 23:40:06 浏览:7
endless rain(endless rain表达什么情感)
2025-02-14 06:00:02 浏览:6
标签列表

热门搜索