Android自定义View学习
maove
不积跬步,无以至千里;不积小流,无以成江海。
展开
-
一行代码实现任意View的粒子爆炸效果
使用方法很简单,只需要一行代码。BombViewUtil.bomb(view,null);//该view需要展现粒子爆炸效果时调用比如对于常见的ImageView、Button、TextView调用上面的方法,效果如下。分析实现:1、首先要明白爆炸的不是真正的TextView或者Button,而是他们对应的快照。通过下面这个方法就可以获得某个View对应的Bitmap。 targe...原创 2019-12-12 22:49:16 · 397 阅读 · 0 评论 -
自定义ViewGroup学习——实现流式布局(FlowLayout)
大致效果如下:实现的思路:每一行item的宽度之和>FlowLayout的宽度时自动换行,在下一行继续排列。每一行的高度值取决于当前行高度值最大的那个item。FlowLayout的高度为所有行高度之和。添加一个适配器类,将每一个item和数据的绑定交给适配器。实现代码:/** * 创建者: mao * 功能描述:根据内容自适应高度的流式布局 */public ...原创 2019-08-25 18:14:04 · 339 阅读 · 0 评论 -
自定义ViewGroup——实现VerticalDragLayout
纯粹是为了自己学习的过程,demo很简单。实现效果:分析:首先这个布局是一个包含两个子View的ViewGroup,第二个子View是一个可以展示列表的View,比如ListView或者RecyclerView。VerticalDragLayout这个ViewGroup可以继承FrameLayout,这样默认第二个会显示在第一个上面。列表是可以被拖拽的,那么什么时候可以拖拽?两种情况:...原创 2019-08-30 14:03:36 · 189 阅读 · 0 评论 -
自定义View学习——九宫格解锁(LockPatternView)
虽然现在的应用很少在使用九宫格解锁,不过系统的应用锁还是可以见到的。实现的效果如下:分析首先需要绘制出九宫格,每一个单元格有两个半径不同的同心圆。当我们的手指在九宫格上触摸时,如果我们触摸在某个单元格的圆内就算选中了该单元,然后将其加入集合中。在触摸的过程中如果某个单元已经被触摸过,即已经被包含在集合中,就不重复将其加入集合。在触摸的过程中触摸了某个圆,就将其状态设为被触摸。手指抬...原创 2019-09-02 22:07:15 · 1132 阅读 · 0 评论