关闭
当前搜索:

RecyclerView的高级用法——定制动画

相信大家都对RecyclerView的用法相当熟悉了,RecyclerView的出现给我们开发者提供了一个高扩展的控件, 不管是列表、网格、瀑布流,一个控件就可以搞定,而且神奇的是只需要修改一行代码,就可以轻松切换。RecyclerView的好处太多太多,就不一一列举了,网上也有很多关于RecyclerView的教程。说到这里,我们就开始进入主题了,虽然网上有那么多的RecyclerView教程,...
阅读(19748) 评论(16)

Android打造不一样的EmptyView

大家都对ListView非常熟悉,目测也会经常使用ListView的一个方法setEmptyView,来设置当数据加载中或者数据加载失败的一个提醒的效果,这个方法虽然使用起来简单,但是如果你提供一个复杂的布局,例如: 在数据加载失败后,添加一个Button让用户可以选择重新加载数据。 那么,你可能会这么做,find这个button,然后给button设置点击事件,好吧。。。一个两个的还可以忍受,...
阅读(9217) 评论(20)

AndroidSupportDesign之TabLayout使用详解

在上一篇博客《高逼格UI-ASD(Android Support Design)》中,我们大体的对TabLayout进行了一些初步的了解,这篇博客,单独拿出TabLayout来继续讲解是因为:纵观Android Support Design库的几个控件,除了诸如:FAB、SnackBar等几个小控件常用以外,也就TabLayout还ok了,其他的例如CollapsingToolbarLayout,这...
阅读(18819) 评论(9)

高逼格UI-ASD(Android Support Design)

绪今年的Google IO给我们android开发着带来了三样很屌很屌的library: ASD(Android Support Design) APL(Android Percent Layout) DBL(Data Binding Library) 这三个库都是很屌很屌的库,第一个可以让我们在低版本的Android上使用Material Design,第二个是为了更好的适...
阅读(14880) 评论(19)

自己实现notifyDatasetChanged

今天这篇博客,我们来实现一下adapter那个最常用的notifyDatasetChanged功能,我们利用一个继承一个LinearLayout来实现一个可能在日常工作中很常用的功能。 大家在工作中可能经常遇到这样的功能: 需要定义一个列表来展示菜单,但是这个菜单并不一定适合ListView,然后,我们可能就通过一个LinearLayout来实现。 如何让我们的LinearLayou...
阅读(2495) 评论(3)

android事件如何分发给子view

哈哈,第一次使用markdown,看着挺高大上的啊。如果顺手了,会直接切换默认为markdown。话说关于android事件分发的博客真的不在少数,基本都是基于源码分析+实例代码的形式讲解。今天的这篇博客呢,主要的侧重点并不是在事件分发上,而是在事件的转换上。为什么需要事件转换? 打个比方吧: 我们点击一个TextView的左上角,加入这个TextView在它老子的中间位置,那我们点击的x/y应...
阅读(2403) 评论(1)

android动手写平滑滚动歌词控件

马上毕业了,前段时间一直忙自己的毕业设计和毕业论文(蛋疼连着菊花疼),做的是一个android音乐播放器,今天特意抽出里面的一块功能来凑这篇博客--歌词的显示。 看看QQ音乐,歌词显示略屌,可惜我们的LRC文件并不能做到词的同步,只能做到行的同步,所以,退而求之,今天的歌词空间只是同步行,那他有什么功能呢? 歌词同步就不说了,切换滑动效果是我后加上的,因为我看着一行行的切换太过生硬。 下面开始...
阅读(4340) 评论(14)

自己动手做sidebar

由于项目原因,需要一个类似联系人列表那种选择的“导航”,这玩意叫什么名, 我至今还是不太清楚, 听群里有哥们说this is sidebar, 那咱们也叫他sidebar吧。首先来一张图片, 来看看sidebar到底是个什么玩意。 ok, 就这玩意, 大家应该很熟悉吧, 这篇博客我们就来做这么一个东西,首先说明一点:代码~ so easy。 首先,来分析一下,当我们看到这个效果后,应该...
阅读(1786) 评论(0)

ListView混搭ProgressBar最佳更新方式

很多时候我们都通过BaseAdapter.getView()中的convertView来提高ListView的性能,这个时候如果我的的ListView的Item里有一个正在更新ProgressBar,结果就悲惨了。。。 滑动界面时并没有达到我们想要的效果。解决这个问题其实很容易,在数据集中保存一下更新的进度,然后在getView中不断去设置进度。 还有一个问题就是,当有进度更新的时候,我们是要不...
阅读(6213) 评论(0)

使用Scroller制作滑块开关ToggleButton

Scroller这个类在自定义view中使用的还算是很频繁的,和它名字一样,我们一般是在控制滑动的时候使用Scroller,以便让view滑动起来不那么生硬。在官方的解释上,Scroller是一个滑动辅助类,也就是说Scroller本身并不参与滑动,而是让我们的代码在Scroller的辅助下轻松的实现平滑滑动的效果。 既然Scroller只是一个辅助类,那能不能利用它来辅助一些其他的功能呢? 当...
阅读(1809) 评论(3)

new Handler().obtainMessage().sendToTarget()过程分析

new Handler().obtainMessage().sendToTarget()这句话用着真爽,一行代码就能搞定异步消息了!所以在代码中使用的算是非常频繁的了,那这又是一个什么样的过程呢? 这个过程中又有什么玄机呢? 这篇文章,我们来一步步的分析一下这三句话。 1、new Handler()的分析 new Handler()会辗转来到public Handler(Callb...
阅读(4887) 评论(1)

ListView+CheckBox两种解决方案及原因分析

最近在用ListView+CheckBox搞一个item选中的项目,我将CheckBox的focus设置为false,另我大喜的是,CheckBox竟然可以选中(窃喜中),这么简单就搞定了,因为数据量较小,也没有发现什么问题。 后来数据多了, 页面需要滑动了, 发现了一个奇怪的问题,前面明明选中了,而再次滑动回去的时候竟然变成未选中状态! 这是我刚开始写的那段错误的代码: @Override...
阅读(1962) 评论(6)

从一次意外开始说java匿名内部类

java的内部类、匿名类本来以为自己用的已经很溜了, 结果, 就在昨天晚上12点来钟发生了重大事故。要说事故的严重性呢,那就是导致我一晚上没有睡着觉。 那下面先用一段模拟代码来描述下我出现的问题的: public class Test { public static void main(String[] args) throws InterruptedException { View v...
阅读(2206) 评论(0)

android标签云:LabelView

嘿嘿, 逗比们好,今天我们来做一个android上的标签云效果,额, 虽然还不是 很完美,但是已经足够可以展现标签云的效果了,首先来看看效果吧。 额, 录屏只能录到这个份上了,凑活着看吧。今天我们就来实现一下这个效果, 这次我选择直接继承view来, 什么? 这样的效果不是SurfaceView擅长的吗? 为什么要view,其实都可以了, 我选择view,是因为:额,我对Surf...
阅读(2440) 评论(1)

打造android ORM框架opendroid(七)——数据库升级方案

在上一篇博客《打造android ORM框架opendroid(六)——级联查询》我们讲了OpenDroid最后一块功能查询的实现原理。今天我们将进行OpenDroid一个重头戏,也是本系列博客的最后一篇——数据库升级方案。 说道数据库升级,我可是很头疼的, 为什么呢? 因为以前的项目中,根本没有考虑数据库升级方案的问题,就直接drop table了,这样导致的结果就是“以前的数据都消失了”。额...
阅读(1803) 评论(6)
82条 共6页首页 上一页 1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:648153次
    • 积分:6909
    • 等级:
    • 排名:第3919名
    • 原创:80篇
    • 转载:0篇
    • 译文:2篇
    • 评论:625条
    文章分类
    博客专栏
    友情链接

    鸿洋_

    Aggie的博客

    梁肖技术中心

    极客导航

    最新评论