凯发K8_凯发K8平台_凯发K8网址_网易新闻
全国免费咨询热线

区块链技术

区块链技术

当前位置:主页 > 区块链技术 >

联系我们

CONTACT

地址:
电话:
传真:
邮箱:

ANDROID自定义视图——仿瀑布布局(附源码),android瀑布

2019-02-01

ANDROID自定义视图——仿瀑布布局(附源码),android瀑布

转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),谢谢支持!


简介:


在自定义view的时候,其实很简单,只需要知道3步骤:

1.测量——onMeasure():决定View的大小

2.布局——onLayout():决定View在ViewGroup中的位置

3.绘制——onDraw():如何绘制这个View。


第3步的onDraw系统已经封装的很好了,基本不用我们来操心,只需要专注到1,2两个步骤就中好了。

第一步的测量,可以参考:(ANDROID自定义视图——onMeasure,MeasureSpec源码 流程 思路详解)

第二步的布局,可以参考:(ANDROID自定义视图——onLayout源码 流程 思路详解)


下面来介绍是如何通过之前学习的onMeasure和onLayout去自定义一个仿瀑布型的自定义视图。


效果图:



如图还可以点击观看详细的比例情况

大家还可以点击右上角的Profile Node查看View的执行效率(视图上面的三个小圆点就是)。

hierarchyviewer还可以查看详细的屏幕画面,具体到像素级别的问题都可以通过它发现。

如果看一个比较复杂的代码时也可以使用hierarchyviewer快速了解视图结构。


DEBUG+找张纸拿笔算:

使用hierarchyviewer的主要作用就是为了调错用的,而具体的宽高计算还需要不停的跟踪debug,而算法和思路就需要用纸笔慢慢设计计算了(除非你有一个牛逼的大脑)


总结:

之前写完onMeasure和onLayout的内容时就想写一个小例子,本来计划写个FlowLayout(流布局)的例子。但是前几个星期发现有人刚写了一个,所以也是借着流布局的思路写出来这个,写完发现这不就是Waterfall Layout(瀑布布局)么。

这个例子有很多可以改进的地方,比如还不能动态添加和删除视图,列值也不能动态设置。没有根据屏幕大小按比例放大/缩小每个Card视图。而且Card视图也应该在Fragment中,然后再添加到自定义View中去。以后有时间我会好好改进一下。



有人要下载的话就看看逻辑就好了,那几个CardLayout我就是东挪西凑弄出来的,里面的代码简直不忍直视大家就忽略好了。

另外这个工程是eclipse建立,然后导入到Android Studio中编写的。正常导入是没问题的,如果有问题的话试试把build.gradle等文件删除再导入,实在不好使就新建个工程把几个关键类复制进去吧。。。


代码点击下载




android中有谁做个带宫格视图的Dialog

dialog的话可以自定义一个九宫格布局,然后重写Dialog,用inflater绑定布局。源码我倒是有一份,LZ想要的话就提供邮箱吧
 
android手机布局,这个筛选布局该怎设置控件?新手讲解

用两个Radio把前面圈圈去掉就行了嘛。
 

http://www.bkjia.com/Androidjc/866963.htmlwww.bkjia.comtruehttp://www.bkjia.com/Androidjc/866963.htmlTechArticleANDROID自定义视图——仿瀑布布局(附源码),android瀑布 转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990 ),谢谢支持! 简介...

本文源自: 凯发K8

Copyright 2018 凯发K8_凯发K8平台_凯发K8网址_网易新闻 版权所有

友情链接: