关闭

详解7.0带来的新工具类:DiffUtil

转: 详解7.0带来的新工具类:DiffUtil 一 概述 DiffUtil是support-v7:24.2.0中的新工具类,它用来比较两个数据集,寻找出旧数据集-》新数据集的最小变化量。 说到数据集,相信大家知道它是和谁相关的了,就是我的最爱,RecyclerView。 就我使用的这几天来看,它最大的用处就是在RecyclerView刷新时,不再无脑mAd...
阅读(219) 评论(0)

RxJava 与 Retrofit 结合的最佳实践

转: RxJava 与 Retrofit 结合的最佳实践 前言 RxJava和Retrofit也火了一段时间了,不过最近一直在学习ReactNative和Node相关的姿势,一直没有时间研究这些新东西,最近有个项目准备写,打算先用Android写一个Demo出来,却发现Android的世界发生了天翻地覆的变化,EventBus和OKHttp啥的都不见了,RxJava和R...
阅读(223) 评论(0)

给 Android 开发者的 RxJava 详解

转: 给 Android 开发者的 RxJava 详解 前言 我从去年开始使用 RxJava ,到现在一年多了。今年加入了 Flipboard 后,看到 Flipboard 的 Android 项目也在使用 RxJava ,并且使用的场景越来越多 。而最近这几个月,我也发现国内越来越多的人开始提及 RxJava 。有人说『RxJava 真是太好用了』,有人说『RxJav...
阅读(156) 评论(0)

使用Dagger 2进行依赖注入

转: 使用Dagger 2进行依赖注入 使用Dagger 2进行依赖注入 发表于 2015-08-06   |   分类于 Android   |   8条评论 0. 前言 Dagger2是首个使用生成代码实现完整依赖注入的框架,极大减少了使用者的编码负担, 本文主要介绍如何使用Dagger2进行依赖注入。如果你不还不了解依赖注入,请看这一篇。...
阅读(157) 评论(0)

依赖注入原理

转: 依赖注入原理 依赖注入原理 发表于 2015-08-01   |   分类于 Software Engineering   |   3条评论 0. 前言 在软件工程领域,依赖注入(Dependency Injection)是用于实现控制反转(Inversion of Control)的最常见的方式之一。本文主要介绍依赖注入原理和常见的实现方式,重点...
阅读(137) 评论(0)

Android中Canvas绘图之Shader使用图文详解

转:  Android中Canvas绘图之Shader使用图文详解 概述 我们在用Android中的Canvas绘制各种图形时,可以通过Paint.setShader(shader)方法为画笔Paint设置shader,这样就可以绘制出多彩的图形。那么Shader是什么呢?做过GPU绘图的同学应该都知道这个词汇,Shader就是着色器的意思。我们可以这样理解,Canva...
阅读(222) 评论(0)

Android官方MVP架构示例项目解析

转: Android官方MVP架构示例项目解析 前段时间Google在Github推出了一个项目,专门展示Android引用各种各样的MVP架构,算是官方教程了。趁着还新鲜,让我们来抛砖引玉一探究竟,看看在Google眼里什么样算是好的MVP架构。 App架构在Android开发者中一直是讨论比较多的一个话题,目前讨论较多的有MVP、MVVM、Clean这三种。...
阅读(170) 评论(0)

你必须了解的RecyclerView的五大开源项目-解决上拉加载、下拉刷新和添加Header、Footer等问题

转:  你必须了解的RecyclerView的五大开源项目-解决上拉加载、下拉刷新和添加Header、Footer等问题 前段时间做项目由于采用的MD设计,所以必须要使用RecyclerView全面代替ListView。但是开发中遇到了需要实现RecyclerView上拉加载、下拉刷新和添加Header以及Footer等需求问题,现将问题解决中用到的五大开源项目总结下来,方便他人。 ...
阅读(246) 评论(0)

Toolbar, AppBarLayout, CollapsingToolbarLayout, CoordinateLayout

转: 玩转AppBarLayout,更酷炫的顶部栏 我的CSDN博客同步发布:玩转AppBarLayout,更酷炫的顶部栏 上一篇文章[《CoordinateLayout的使用如此简单 》]上一篇文章《CoordinateLayout的使用如此简单 》对CoordinateLayout的使用做了讲解,今天我们再讲解常常与其一起使用的几个View:AppB...
阅读(236) 评论(0)

Android数据库框架-Archiver(LiteOrm)的简单使用(一)

Android数据库框架-Archiver(LiteOrm)的简单使用(一) Android系统为开发者提供了SQLiteOpenHelper帮助类来操作数据库,当然了,系统也封装得比较好了,不过今日我们来看看其他的数据库框架。 开源地址:https://github.com/litesuits/android-lite-orm  在此要先感谢作者,作者的个人主页:http...
阅读(227) 评论(0)

Android 快速开发系列之数据库篇(LiteOrm)

Android 快速开发系列之数据库篇(LiteOrm) 继上一篇GreenDao后,本文将带领大家学习下基于注解的orm框架:LiteOrm,注意不是Ormlite,作者是马天宇,不是那个歌手哦,现在在阿里巴巴任职。好了闲话不多扯了。 LiteOrm是一个小巧、强大、比系统自带数据库操作性能快1倍的 android ORM 框架类库,开发者一行代码实现数据库的增删改查操作,以...
阅读(314) 评论(0)

SlidingPaneLayout和DrawerLayout的区别

SlidingPaneLayout和DrawerLayout的区别 SlidingPaneLayout SlidingPaneLayout是Android在android-support-v4.jar中推出的一个可滑动面板的布局,我们提到水平布局时的LinearLayout无法自动左右拉伸,必须借助于手势事件才能拉出左侧隐藏的布局,现在SlidingPaneLayout...
阅读(1177) 评论(1)

部分可见的侧边菜单与交叉渐变效果的SlidingPaneLayout

部分可见的侧边菜单与交叉渐变效果的SlidingPaneLayout Gmail的平板版本有一个特色的功能: 侧边菜单面板总是可见的,当关闭的时候只显示图标,当打开的时候会显示更详细的内容,并且两个内容切换的时候有个交叉渐变效果,是如何实现的呢? 我观察到主面板是在侧边面板打开的时候滑动的,因此应该不是用的NavigationDrawer,那我们试试Sli...
阅读(150) 评论(0)

自定义控件辅助神器ViewDragHelper

自定义控件辅助神器ViewDragHelper 目录(?)[+] ViewDragHelper作为官方推出的手势滑动辅助工具,极大的简化了我们对手势滑动的处理逻辑,v4包中的SlidingPaneLayout和DrawerLayout内部都有ViewDragHelper的身影,这里对这个强大的辅助工具类使用以及相关方法做个系统性的...
阅读(221) 评论(0)

Viewdraghelper解析

Viewdraghelper解析 2013年谷歌i/o大会上介绍了两个新的layout: SlidingPaneLayout和DrawerLayout,现在这俩个类被广泛的运用, 其实研究他们的源码你会发现这两个类都运用了ViewDragHelper来处理拖动。ViewDragHelper是framework中非常有用的一个工具。 ViewDragHelper解决了...
阅读(148) 评论(0)

Android开发:最详细的 NavigationDrawer 开发实践总结

Android开发:最详细的 NavigationDrawer 开发实践总结 最详细的 NavigationDrawer 开发实践总结 继前面写的两篇文章之后(有问题欢迎反馈哦): Android开发:Translucent System Bar 的最佳实践Android开发:最详细的 Toolbar 开发实践总结 接着来写写Android系统UI新特性,本文是...
阅读(151) 评论(0)

漫谈Android 增量更新

漫谈Android 增量更新 在前几年,整体移动网络环境相比现在差很多,加之流量费用又相对较高,因此每当我们发布新版本的时候,一些用户升级并不是很积极,这就造成了新版本的升级率并不高。而google为了解决了这个问题,提出了Smart App Update,即增量更新(也叫做差分升级)。 尽管现在网络环境有了很大的提升,但一个不争的事实就是应用越做越大,因此,增量更新在目前...
阅读(162) 评论(0)

Chrome Custom Tabs最佳实践

Chrome Custom Tabs最佳实践 距离Google发布Chrome Custom Tabs已经一年,Twitter、Medium等国外App早已支持了这个功能,但遗憾的是国内App鲜有支持。这篇文章以官方开发文档和示例源码为基础,加上自己的理解,希望能帮助读者快速掌握Chrome Custom Tabs的用法。 为什么要用Chrome Custom Tabs...
阅读(182) 评论(0)

Android Support Library的前世今生

Android Support Library的前世今生 在之前的开发经历中经常需要导入一些如v4、v7、v13等Android官方的支持包,遇到这些情况时都是网上搜索一下,按照前人给的示例添加依赖。这么稀里糊涂的使用后代码正常运行了,但心中不免会有一些疑问,如,Android官方为什么要提供支持包,都提供哪些支持包,这些支持包又提供了什么特性,开发者又应该如何选择使用这些支...
阅读(124) 评论(0)

使用SwipeRefreshLayout和RecyclerView实现仿“简书”下拉刷新和上拉加载更多

使用SwipeRefreshLayout和RecyclerView实现仿“简书”下拉刷新和上拉加载更多 一、概述 本篇博客介绍的是如何使用SwipeRefreshLayout和RecyclerView实现高仿简书Android端的下拉刷新和上拉加载更多的效果。 根据效果图可以发现,本案例实现了如下效果: 第一次进入页面显示SwipeRefre...
阅读(551) 评论(0)
143条 共8页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:106568次
    • 积分:1716
    • 等级:
    • 排名:千里之外
    • 原创:38篇
    • 转载:104篇
    • 译文:1篇
    • 评论:15条
    最新评论