自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 资源 (33)
  • 收藏
  • 关注

原创 仿微信雷达寻好友动画

先看看要实现的效果:这种效果正是类似微信上雷达寻找好友的动画,于是解压微信看看里面,发现微信是用一张图片做的旋转动画,于是乎看看这种特效,可以用画笔直接画出来,首先是四个圆,然后中间那部分扫描区便是颜色由透明渐变到淡白。比较简单。public class RaderView extends View { private Paint mPaintCircleLine;//绘制

2015-07-30 09:52:45 3029 2

原创 插件化开发—动态加载技术加载已安装和未安装的apk

首先引入一个概念,动态加载技术是什么?为什么要引入动态加载?它有什么好处呢?首先要明白这几个问题,我们先从应用程序入手,大家都知道在Android App中,一个应用程序dex文件的方法数最大不能超过65536个,否则,你的app将出异常了,那么如果越大的项目那肯定超过了,像美团、支付宝等都是使用动态加载技术,支付宝在去年的一个技术分享类会议上就推崇让应用程序插件化,而美团也公布了他们

2015-07-29 14:20:16 17163 17

原创 DiskLruCache硬盘缓存技术详解

上次讲了使用内存缓存LruCache去加载很多图片而不造成OOM,而这种缓存的特点是在应用程序运行时管理内存中的资源(图片)的存储和释放,如果LruCache中有一张图片被释放了,再次加载该图片时需要重新从网络上下载下来,这就显得废流量不说,而且费时,网络不好的状况下用户需要等待,而且在没有网络的情况下不会显示任何数据。那么怎样才能解决这种情况呢?答案就是加入硬盘缓存DiskLruCache。

2015-07-23 16:28:04 3017 3

原创 Android中处理大图片时图片压缩

1、BitmapFactory.Options中的属性在进行图片压缩时,是通过设置BitmapFactory.Options的一些值来改变图片的属性的,下面我们来看看BitmapFactory.Options中常用的属性意思:options.inPreferredConfig - 设置Bitmap的偏好配置,值有Bitmap.Config.ARGB_8888,Bitmap.Conf

2015-07-22 11:27:13 3047 1

原创 让App中加入LruCache缓存,轻松解决图片过多造成的OOM

上次有过电话面试中问到Android中的缓存策略,当时模糊不清的回答,现在好好理一下吧。Android中一般情况下采取的缓存策略是使用二级缓存,即内存缓存+硬盘缓存—>LruCache+DiskLruCache,二级缓存可以满足大部分的需求了,另外还有个三级缓存(内存缓存+硬盘缓存+网络缓存),其中DiskLruCache就是硬盘缓存,下篇再讲吧!1、那么LruCache到底是什么呢?

2015-07-21 17:18:31 1915

原创 Material Design之FloatingActionButton的使用

FloatingActionButton是继承至ImageView,所以FloatingActionButton拥有ImageView的所有属性。CoordinatorLayout可以用来配合FloatingActionButton浮动按钮,设置app:layout_anchor和app:layout_anchorGravity构建出特定的位置与效果的FloatingActionButton。

2015-07-19 14:36:55 27273

原创 关于Service中bindService注意的几个问题

最近有用到Activity需要不断的从Service中获取数据,第一个想法肯定就是通过bind回调机制了,有几点概念模糊特此记录下:单独使用bindService(),unbindService()会经历:->onCreate()->onBind()->Service running->onUnbind() -> onDestroy() 。单独使用startService(),stop

2015-07-17 21:48:39 8461

原创 ViewPager切换动画PageTransformer的使用

Android从3.0开始添加了属性动画后,诸多难以实现的动画都可以轻松解决了,v4包下的ViewPager控件当然也不例外,相对于非常平庸的默认切换动画,Google官方给我们展示了两个动画例子:DepthPageTransformer和ZoomOutPageTransformer,比较炫。实际上我们也可以通过实现ViewPager.PageTransformer接口来做出完全不同的切换

2015-07-16 15:12:09 3265

原创 Material Design之CollapsingToolbarLayout使用

CollapsingToolbarLayout作用是提供了一个可以折叠的Toolbar,它继承至FrameLayout,给它设置layout_scrollFlags,它可以控制包含在CollapsingToolbarLayout中的控件(如:ImageView、Toolbar)在响应layout_behavior事件时作出相应的scrollFlags滚动事件(移除屏幕或固定在屏幕顶端)。使

2015-07-16 09:19:55 56557 19

原创 优雅的App完全退出方案(没有任何内存泄漏隐患)

在Android开发过程中,特别是界面比较多的情况下,用平常的退出方式往往是不能完全退出这个应用,网络上也好多各种退出方案。其中一种应该是被广大开发者采纳使用,也非常的清晰方便,就是在Application中维护一个单例的List管理容器,每次打开新的Activity就把当前Activity加入到容器中,然后在需要完全退出的时,就循环遍历该容器分别finish()每个Activity,即达到完全退

2015-07-14 15:49:15 4147 10

原创 Material Design之TextInputLayout、Snackbar的使用

这两个控件也是Google在2015 I/O大会上发布的Design Library包下的控件,使用比较简单,就放在一起讲了,但有的地方也是需要特别注意一下。TextInputLayoutTextInputLayout功能非常简单,就是用于用户在EditText中输入时hint的提示和错误的提示。先来看看效果图吧:从上图很明显的看出:1、当EditText获得焦

2015-07-14 13:30:16 3786

原创 Material Design之CoordinatorLayout+AppBarLayout实现上滑隐藏ToolBar

ok,今天继续更新Material Design系列!!!废话不说,先看看效果图吧:好了,现在来讲讲上图是怎么实现的吧!讲之前先讲讲几个控件:CoordinatorLayout 该控件也是Design包下的一个控件,然而这个控件可以被称为Design包中最复杂、功能最强大的控件:CoordinatorLayout。为什么这样说呢?原因是:它是组织它众多子

2015-07-12 19:28:35 31312 18

原创 com.android.dex.DexException: Multiple dex files define(jar包重复引用) 错误解决

前段时间开始转入Android studio,不料果真使用时候遇到些错误,在此记下!出现这个错误往往是在libs目录下有个jar包,然后在gradle文件中又引用了,即:共同引用了。解决方法:1、既然在gradle文件中引用了,即2,那么把libs中的删了。2、更改1中的配置,即把compile改为provided,更改方法可以手动更改,也可以在structure中

2015-07-11 19:13:38 6091

原创 Material Design之NavigationView和DrawerLayout实现侧滑菜单栏

本文将介绍使用Google最新推出规范式设计中的NavigationView和DrawerLayout结合实现侧滑菜单栏效果,NavigationView是android-support-design包下的一个控件,该包下还有AppBarLayout、CoordinatorLayout、FloatingActionButton、SnackBar、TabLayout控件,也是Google在Andro

2015-07-11 18:20:53 6931 3

原创 Material Design之CardView的使用

本文介绍CardView这个控件的使用,CardView继承至FrameLayout类,是support-v7包下的一个类,使用时必须引入cardview依赖包,可在下载的sdk文件夹中找到。。。使用CardView可以实现卡片式布局效果,非常好看,卡片还可以包含圆角、阴影、背景。CardView是一个ViewGroup,布局时包含其它的View从而实现优雅界面效果。首先来看看个界面效果:

2015-07-10 14:11:16 17962 3

原创 RecyclerView实现瀑布流效果(二)

在上篇中我们知道RecyclerView中默认给我们提供了三种布局管理器,分别是LinearLayoutManager、GridLayoutManager、StaggeredGridLayoutManager。其中StaggeredGridLayoutManager可实现交错式网格布局,正好可以用来实现瀑布流。下面先看看效果图吧,再贴代码:其中大部分内容实现其实是和上篇文章

2015-07-04 18:23:04 10384 3

原创 Material Design之RecyclerView的使用(一)

Android 5.0开始就推荐使用Material Design这个设计语言,本文开始就逐一讲解Material Design中控件的使用。本章主要讲解RecyclerView,期中会带有ToolBar的代码,也是一个Android5.x推荐使用ToolBar替代ActionBar的控件,RecyclerView 是 android-support-v7包中的一个控件,使用该控件时需要添加c

2015-07-04 14:00:07 4211 4

GreenDAO的CRUD操作

GreenDAO的CRUD操作

2015-09-14

在线热更新Dexposed框架

在线热更新Dexposed框架

2015-09-09

SVG矢量动画

SVG矢量动画

2015-09-06

ThemeChangeDemo

android 主题切换

2015-08-29

materialdesign动画示例

materialdesign动画示例

2015-08-28

RecyclerViewHeaderAndFooter

RecyclerViewHeaderAndFooter添加头部和尾部

2015-08-26

RecylerView侧滑删除和拖拽

RecylerView侧滑删除和拖拽

2015-08-24

Android事件分发机制

Android事件分发机制测试Demo

2015-08-18

Volley请求网络图片

使用Volley请求网络图片防止OOM

2015-08-15

Volley.jar

Volley.jar

2015-08-12

Material CheckBox

Material Design 风格的checkbox,Material Design 风格的checkbox

2015-08-07

Android Data Binding

Android Data Binding结合RecyclerView的使用

2015-08-06

插件化开发-动态加载

插件化开发-动态加载已安装apk和未安装的apk

2015-07-29

DiskLruCacheDemo

DiskLruCacheDemo

2015-07-23

DiskLruCache

Google又提供了一套硬盘缓存的解决方案:DiskLruCache(非Google官方编写,但获得官方认证),怎么使用呢?下载好了之后,在项目中新建一个名为libcore.io包,然后将DiskLruCache.java代码文件复制到这个包中即可开始使用。

2015-07-23

LruCache使用

LruCache使用

2015-07-21

Material Design icon图标

Material Design icon图标

2015-07-19

FloatingActionButton的使用

Google提供的Design Library中FloatingActionButton的使用。 和配合Snackbar的使用

2015-07-19

ViewPager的使用

ViewPager的动画效果实现,利用Google提供的两种动画来说明自定义动画。

2015-07-19

CollapsingToolbarLayout使用 源码下载

CollapsingToolbarLayout作用是提供了一个可以折叠的Toolbar,它继承至FrameLayout,给它设置layout_scrollFlags,它可以控制包含在CollapsingToolbarLayout中的控件(如:ImageView、Toolbar)在响应layout_behavior事件时作出相应的scrollFlags滚动事件(移除屏幕或固定在屏幕顶端)。

2015-07-16

日期选择控件(可防止屏幕旋转抛出的异常)

日期选择控件(可防止屏幕旋转抛出的异常)

2015-07-13

AppBarLayout实现上滑隐藏ToolBar

AppBarLayout实现上滑隐藏ToolBar,下滑出现

2015-07-12

NavigationView实现侧滑菜单栏

将介绍使用Google最新推出规范式设计中的NavigationView和DrawerLayout结合实现侧滑菜单栏效果

2015-07-11

CardView的使用

CardView是support-v7包下的一个控件,google新推出的一款符合材料设计的Layout。。。

2015-07-11

RecyclerView实现瀑布流

RecyclerView实现瀑布流效果。

2015-07-04

RecyclerView的使用

提供一种插件式编程,开发者对RecyclerView的设计更加自由

2015-07-04

使用DialogFragment替代AlertDialog

Google官方推荐使用DialogFragment代替AlertDialog,很好的解决屏幕旋转产生的问题。。。

2015-05-25

ListView添加CheckBox复选框

在ListView中添加CheckBox,实现多选条目

2015-05-15

ViewFlipper详解demo

该demo主要是说明了ViewFlipper这个控件怎么使用,并加入动画效果和点击暂停过一段时间又自动切换,可谓是实现了ViewFlipper功能外又完善了它的自动切换效果

2015-02-26

android 指南针 源码

android 指南针 源码

2014-08-21

java实现的多媒体播放器

ava实现的简单多媒体播放器

2014-08-20

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除