自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

陌影

水滴石穿

  • 博客(41)
  • 资源 (1)
  • 收藏
  • 关注

原创 Android利用谷歌Gson解析Json生成bean类详解

gson相对原生的jsonObject解析数据还是非常轻松的,鉴于fastJson存在不能区分大小写数据的bug,因此建议在项目中多使用Gson解析数据。 { "reason": "查询成功", "result": { "title": "泰坦尼克号", "tag": "剧情 \/ 历史 \/ 爱情", "act": "莱昂纳多·

2016-05-08 00:04:53 4837

原创 深入了解Android进度条——ProgressBar,SeekBar和RatingBar

Android常用的进度条有ProgressBar,SeekBar和RatingBar。ProgressBar继承于View类,直接子类有AbsSeekBar和ContentLoadingProgressBar,而SeekBar和RatingBar又是AbsSeekBar的子类,因此ProgressBar是RatingBar,SeekBar的父类。一、ProgressBarAndr

2016-05-07 23:08:12 3492

转载 ToolBar简介

ToolBar简介ToolBar是Android 5.0推出的一个新的导航控件用于取代之前的ActionBar,由于其高度的可定制性、灵活性、具有Material Design风格等优点,越来越多的应用也用上了ToolBar,比如常用的知乎软件其顶部导航栏正是使用ToolBar。官方考虑到仍有一部分用户的手机版本号低于5.0,所以,ToolBar也放进了support v7包内,使得低

2016-05-07 22:15:20 480

原创 Fragment,FragmentManager, FragmentTransaction详解

Fragment是3.0引入的新组件,在3.0之前需要引入v4包的Fragment进行向下兼容,在项目中会频繁用到。先说下3.0的Fragment用法。其中,Fragment的生命周期就不多说了,首先构建Fragment 的View对象。@Override public View onCreateView(LayoutInflater inflater, ViewGroup cont

2016-05-06 13:11:42 7288

原创 Android动画设置

最近学习了下动画,大致分为:属性动画(继承值动画),帧动画,补间动画。下面介绍下每一种的XML文件配置首先:普通动画:分为translate,scale,alpha,rotate,四种动画配置大题相同;<translate xmlns:android="http://schemas.android.com/apk/res/android" android:duration="1

2016-05-06 11:34:04 786

原创 Android Handler泄露问题

内部类引用导致Activity的泄漏:最典型的场景是Handler导致的Activity泄漏,如果Handler中有延迟的任务或者是等待执行的任务队列过长,都有可能因为Handler继续执行而导致Activity发生泄漏。此时的引用关系链是Looper -> MessageQueue -> Message -> Handler -> Activity。为了解决这个问题,可以在UI退出之前,

2016-05-30 14:23:57 399

转载 Android常用性能优化

本篇主要是对 google推出的性能优化典范 进行一个通篇的整理… 主要在于一些具体的优化技巧、至于 60fps、掉帧、gc、内存抖动、阈值…等等这些性能术语的概念里面不做多概括,请自行查阅…本篇从以下几点延伸扩展…

2016-05-30 13:09:02 311

原创 Android替代HashMap的SparseArray

一、概述最近在项目中看到了SparseArray,好奇研究了下。 SparseArray是Android框架独有的类,在标准的JDK中不存在这个类。它要比 HashMap 节省内存,某些情况下比HashMap性能更好,按照官方问答的解释,主要是因为SparseArray不需要对key和value进行auto-boxing(将原始类型封装为对象类型,比如把int类型封装成Integer类型),结

2016-05-20 14:26:16 668

原创 关于android中ListView的Adapter如何设计能通用的一些看法

我们都知道,在安卓中使用ListView显示多条数据的时候,必须要用一个适配器作为Data和View的桥梁,这种设计非常好, 能很简单就把ui和data分离开来,为ui的复用和维护代码提供方便。但是每次写一个适配器,都要实现一大堆的重复逻辑,其实每次getView中无非就是Holder对象不一样,加载的数据类型不一样,剩下的方法都是相同的,那么我们就可以将相同的元素抽取出来写成一个基类,整理下代码冗余。

2016-05-20 13:13:37 500

转载 Android通知栏的微技巧(5.0之后小图标与大图标的区别)

对于通知栏的使用,Android各个版本其实都有比较大的调整,包括即将发布的Android 7.0版本,通知栏功能上又要有大动作。那么新版本的通知栏API无法兼容老系统这就会是一个很头疼的问题。

2016-05-19 14:06:24 12391 1

转载 Android Viewpager+Fragment的懒加载优化问题

我们在做应用开发的时候,一个Activity里面可能会以viewpager(或其他容器)与多个Fragment来组合使用,而如果每个fragment都需要去加载数据,或从本地加载,或从网络加载,那么在这个activity刚创建的时候就变成需要初始化大量资源。这样的结果,我们当然不会满意。那么,能不能做到当切换到这个fragment的时候,它才去初始化呢?答案就在Fragment里的setU

2016-05-19 13:39:57 1081

转载 Android加载大图片,LRU缓存机制

高效加载大图片我们在编写Android程序的时候经常要用到许多图片,不同图片总是会有不同的形状、不同的大小,但在大多数情况下,这些图片都会大于我们程序所需要的大小。比如说系统图片库里展示的图片大都是用手机摄像头拍出来的,这些图片的分辨率会比我们手机屏幕的分辨率高得多。大家应该知道,我们编写的应用程序都是有一定内存限制的,程序占用了过高的内存就容易出现OOM(OutOfMemory)异常。我们可以通过下面的代码看出每个应用程序最高可用内存是多少。

2016-05-17 21:13:01 346

转载 Android Handler(子线程Handler)异步消息处理机制的妙用(活用信号量) 创建强大的图片加载类

转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/38476887 ,本文出自【张鸿洋的博客】最近创建了一个群,方便大家交流,群号:55032675上一篇博客介绍了Android异步消息处理机制,如果你还不了解,可以看:Android 异步消息处理机制 让你深入理解 Looper、Handler、Message三者关系 。那篇博客的最后,提出可以把异步消息处理机制不仅仅是在MainActivity中更新UI,可以用到别的地方,最近也一直在

2016-05-17 20:53:18 914

转载 Android 异步消息处理机制 让你深入理解 Looper、Handler、Message三者关系

转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/38377229 ,本文出自【张鸿洋的博客】很多人面试肯定都被问到过,请问Android中的Looper , Handler , Message有什么关系?本篇博客目的首先为大家从源码角度介绍3者关系,然后给出一个容易记忆的结论。1、 概述Handler 、 Lo

2016-05-17 17:14:48 286

转载 Android-本地广播提高安全性

通常 我们大部分广播接收器的作用是为了处理我们的应用业务,在广播机制中,Android提供了LocalBroadcastManager类来为我们应用安全保驾护航

2016-05-17 15:22:21 398

转载 Android onTouchEvent,onClick,onLongClick的return值注意事项

android应用中常用的监听OnTouchListener、OnClickListener、OnLongClickListener,大家肯定经常使用。但是你真的知道它会产生的神奇效果么?不要忽视这些神奇效果哦!说不定这些神奇效果正是你想要的呢?好,下面请看我的示例。示例、首先在Activity中创建一个button,然后对这个button同时设置OnTouchListener、OnClickListener、onLongClickListener这三种监听方式。接着就是重写这三个接口的实现代码了。

2016-05-17 13:28:25 1713

原创 Android解决ListView头ViewPager事件冲突问题

在LIstView添加addHeader()时,会出现事件冲突,比较好的解决方法包括两种,一种是自定义ListView,重写他的拦截方法,另外一种就是自定义ViewPager。

2016-05-17 11:26:44 2034

转载 Android 屏幕旋转 处理 AsyncTask 和 ProgressDialog 的最佳方案

1、概述众所周知,Activity在不明确指定屏幕方向和configChanges时,当用户旋转屏幕会重新启动。当然了,应对这种情况,Android给出了几种方案:a、如果是少量数据,可以通过onSaveInstanceState()和onRestoreInstanceState()进行保存与恢复。Android会在销毁你的Activity之前调用onSaveInstanceState()方法,于是,你可以在此方法中存储关于应用状态的数据。然后你可以在onCreate()或onRestoreInsta

2016-05-15 15:59:16 318

转载 Android 官方推荐 : DialogFragment 创建对话框

DialogFragment在android 3.0时被引入。是一种特殊的Fragment,用于在Activity的内容之上展示一个模态的对话框。典型的用于:展示警告框,输入框,确认框等等。在DialogFragment产生之前,我们创建对话框:一般采用AlertDialog和Dialog。注:官方不推荐直接使用Dialog创建对话框。

2016-05-15 14:51:43 271

转载 Android Fragment 真正的完全解析(下)

本篇将介绍上篇博客提到的:如何管理Fragment回退栈,Fragment如何与Activity交互,Fragment与Activity交互的最佳实践,没有视图的Fragment的用处,使用Fragment创建对话框,如何与ActionBar,MenuItem集成等~~

2016-05-15 14:50:05 214

转载 Android Fragment 真正的完全解析(上)

本篇博客力求为大家说明Fragment如何产生,什么是Fragment,Fragment生命周期,如何静态和动态的使用Fragment,Fragment回退栈,Fragment事务;以及Fragment的一些特殊用途,例如:没有布局的Fragment有何用处?Fragment如何与Activity交互?Fragment如何创建对话框?Fragment如何与ActionBar集成等等。

2016-05-15 14:48:33 272

转载 给Android ListView添加删除item动画

给listview删除一个item的时候加上一个折叠动画,感觉效果会好一点。步骤是当删除一个view,先用动画把view的高度改变,看上去就是折叠的效果。当动画完成的时候,再真正把item移除。做法大概分为两种,补间动画、属性动画

2016-05-12 21:14:20 6698 6

转载 Android GestureDetector方法详解

为了加强点击、拖动响应事件,Android提供了GestureDetector手势识别类。通过GestureDetector.OnGestureListener来获取当前被触发的操作手势(Single Tap Up、Show Press、Long Press、Scroll、Down、Fling)

2016-05-12 20:21:01 457

转载 ExpandableListView(可折叠列表)的基本使用

本节引言:本节要讲解的Adapter类控件是ExpandableListView,就是可折叠的列表,它是ListView的子类, 在ListView的基础上它把应用中的列表项分为几组,每组里又可包含多个列表项。至于样子, 类似于QQ联系人列表,他的用法与ListView非常相似,只是ExpandableListVivew显示的列表项 需由ExpandableAdapter提供。 下面我

2016-05-11 11:34:09 3701

转载 Android Intent之间传递数据

本节引言:上一节中我们学习了Intent的一些基本使用,知道了Intent的七个属性,显式Intent以及 隐式Intent,以及如何自定义隐式Intent,最后还给大家提供了一些常用的系统Intent! 而本节跟大家讲解的是Intent传递数据的问题~好的,开始本节内容~1.Intent传递简单数据还记得我们在Activity那里学过如何在两个Activi

2016-05-10 22:56:19 968

原创 Android获取系统服务getSystemService与getService区别

android的后台运行在很多service,它们在系统启动时被SystemServer开启,支持系统的正常工作,比如MountService监听是否有SD卡安装及移除,ClipboardService提供剪切板功能,PackageManagerService提供软件包的安装移除及查看等等,应用程序可以通过系统提供的Manager接口来访问这些Service提供的数据,

2016-05-10 17:34:01 14593

原创 Android在Service中注册动态广播接收者

广播接收器注册一共有两种形式 : 静态注册和动态注册.两者及其接收广播的区别:1.动态注册的广播 永远要快于 静态注册的广播,不管静态注册的优先级设置的多高,不管动态注册的优先级有多低>\2.动态注册广播不是 常驻型广播 ,也就是说广播跟随activity的生命周期。注意: 在activity结束前,移除广播接收器。静态注册是常驻型 ,也就是说当应用程序关闭后,如果有信息广播来,程序也会被系统调用自动运行。3.同种广播如果在同一个优先级下,谁先启动的快,谁将先接收到广播。

2016-05-10 14:18:35 18549

转载 Android序列化Serializable和Parcelable区别

Intent在不同的组件中传递对象数据的应用非常普遍。下面介绍两种通过Intent传递对象的方法。1、实现Serializable接口2、实现Parcelable接口 为什么要将对象序列化? 1、永久性保存对象,保存对象的字节序列到本地文件中; 2、用过序列化对象在网络中传递对象;(网络间传递对象更倾向于使用Serializable方式) 3

2016-05-10 13:46:30 394

转载 Android 9.Patch图详解

1.本节引言:可能有的一些疑问:1.什么是.9图片? 答:图片后缀名前有.9的图片,如pic1.9.png这样的图片2. .9图片能干嘛? 答: 在图片拉伸的时候特定的区域不会发生图片失真,而不失真的区域可以由我们自己绘制3. .9图片用什么做? 答:工欲善其事,必先利其器,做.9图片的工具有:①Android SDK自带:draw9patch.bat,不过

2016-05-09 23:27:51 1772

转载 Android RSA非对称加密解密算法

转载请注明出处: http://blog.csdn.net/bbld_/article/details/38777491概述RSA是目前最有影响力的公钥加密算法,该算法基于一个十分简单的数论事实:将两个大素数相乘十分容易,但那时想要对其乘积进行因式分解却极其困 难,因此可以将乘积公开作为加密密钥,即公钥,而两个大素数组合成私钥。公钥是可发布的供任何人使用,私钥则为自

2016-05-09 17:49:03 1606 1

转载 Android Notification自定义PendingIntent 详解

本节带来的是Android中用于在状态栏显示通知信息的控件:Notification,相信大部分 学Android都对他都很熟悉,而网上很多关于Notification的使用教程都是基于2.x的,而 现在普遍的Android设备基本都在4.x以上,甚至是5.0以上的都有;他们各自的Notification 都是不一样的!而本节给大家讲解的是基于4.x以上的Notification,而5.0以上的N

2016-05-08 20:48:46 4266

转载 Android ListView的不同样式,getItemViewType,getViewTypeCount

给大家带来的是ListView多布局Item的实现, 何为ListView Item多布局,打个比方,QQ这种聊天列表:假如他是用一个ListView做的,那么一个ListView上不就有两种不同的Item咯! 一左一右,嘿嘿,本节就来教大家如何实现ListView的多布局!1.要点讲解:重写getItemViewType()方法对应View是哪个类别,

2016-05-08 19:00:24 687

转载 Android ViewPager与Fragment的延时切换,取消预加载优化

之前详细的向大家介绍过Fragment与ViewPager如何混合使用,但是在优化方面没做过多介绍,下面介绍下Fragment与ViewPager的xi'tong'you'hua在项目中,都或多或少地使用的Tab布局,所以大都会用到ViewPager+Fragment,但是Fragment有个不好或者太好的地方。例如你在ViewPager中添加了三个Fragment,当加载ViewPage

2016-05-08 13:41:54 981

转载 Android实现ViewPager+Fragment

1.ViewPager简单介绍1)是怎么样的一个控件?答:一个页面切换的组件,我们可以往里面填充多个View,然后我们可以通过触摸屏幕左右滑动 切换不同的View,和前面学习的ListView一样,我们需要一个Adapter(适配器),将要显示的View和 我们的ViewPager进行绑定,而ViewPager有他自己特定的Adapter——PagerAdapter!另外,

2016-05-08 13:09:54 749

转载 Android利用Fragment实现新闻客户端界面切换(addBackStack,popBackStack)

Android3.0之后引入了一个轻量级组件Fragment,相对于Activity他有很多优点,这里不阐述了 ,有兴趣的同学可以参考我的博文:下面说下如何实现Activity与Fragment合理切换。原型工具画个大概吧:大概就这样,中间区域是一个布局容器,一般是FrameLayout,然后我们将一个Fragment replace 到这个容器中或者add也行,而

2016-05-08 11:55:02 946

转载 android AsyncTask介绍

AsyncTask和Handler对比1 ) AsyncTask实现的原理,和适用的优缺点AsyncTask,是android提供的轻量级的异步类,可以直接继承AsyncTask,在类中实现异步操作,并提供接口反馈当前异步执行的程度(可以通过接口实现UI进度更新),最后反馈执行的结果给UI主线程.使用的优点:l  简单,快捷l  过程可控       使用的缺点:l

2016-05-08 11:32:09 220

转载 Android的自定义View详解

Android开发做到了一定程度,多少都会用到自定义控件,一方面是更加灵活,另一方面在大数据量的情况下自定义控件的效率比写布局文件更高。    一个相对完善的自定义控件在布局文件中和Java代码中都应能灵活设置属性。另外在普通的布局中和AdapterView中都应能正确绘制,这就要求合理设计onMeasure方法,下文中会做比较详细的讲解。    本文原创,如需转载,请注明转载地址

2016-05-07 10:19:32 416

转载 ViewDragHelper详解

2013年谷歌i/o大会上介绍了两个新的layout: SlidingPaneLayout和DrawerLayout,现在这俩个类被广泛的运用,其实研究他们的源码你会发现这两个类都运用了ViewDragHelper来处理拖动。ViewDragHelper是framework中不为人知却非常有用的一个工具。ViewDragHelper解决了Android中手势处理过于复杂的问题,在Drawe

2016-05-07 02:08:31 361

原创 Android的有序无序BroadCast,ResultReceiver详解

最近项目组在做PUSH消息推送的东西,用到了广播接收者与Service服务,这里简单对BroadCast做下总结:1, 该广播的级别有级别之分,级别数值是在 -1000 到 1000 之间 , 值越大 , 优先级越高;2, 同级别接收是先后是随机的,再到级别低的收到广播;3, 同级别接收是先后是随机的,如果先接收到的把广播截断了,同级别的例外的接收者是无法收到该广播的。( abor

2016-05-07 00:21:38 1992

原创 微信QQ侧拉删除的条目SwipeLayout与SwipeListview介绍

最近项目用到了测拉菜单,类似于微信与QQ的形似,自己研究了一下,主要是自定义View与ViewDragHelper,实现起来非常容易,但是扩展性不好,这里介绍一个git上的SwipeLayout。package com.example.jiangwei18.myswipelayout;import android.support.v7.app.AppCompatActivity;im

2016-05-04 13:56:44 1912

Android第三方PUSH-SDK总结

Android第三方PUSH-SDK总结。包括小米PUSH

2016-05-19

空空如也

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

TA关注的人

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