自定义博客皮肤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)
  • 资源 (7)
  • 收藏
  • 关注

转载 可拖拽gridview实现2

在Android开发中,我们常常用到ListView和GridView,而有的时候系统的ListView,GridView并不能满足我们的需求,所以我们需要自己定义一个ListView或者GridView,我的上一篇文章中就是自定义的一个左右滑动删除item的例子,大家有兴趣的可以去看看 Android 使用Scroller实现绚丽的ListView左右滑动删除Item效果,今天这篇文章就给大

2015-11-18 08:59:51 498

转载 可拖拽GridView代码解析

本篇学习笔记是对eoe网上一个项目代码的解读,具体项目作者的博客如下:http://blog.csdn.net/vipzjyno1/article/details/26514543。项目源码下载地址为https://github.com/Rano1/TopNews本篇只对可拖拽的GridView的代码进行解读,同时修改了原项目中不必要的变量、去掉了不必要或者逻辑错误的代码,也删除了方法中不必要的局

2015-11-18 08:27:21 361

转载 Android Context完全解析

Context相信所有的Android开发人员基本上每天都在接触,因为它太常见了。但是这并不代表Context没有什么东西好讲的,实际上Context有太多小的细节并不被大家所关注,那么今天我们就来学习一下那些你所不知道的细节。Context类型我们知道,Android应用都是使用Java语言来编写的,那么大家可以思考一下,一个Android程序和一个Java程序,他们最大的区别在

2015-11-13 16:05:11 270

转载 Android ListView工作原理解析

在Android所有常用的原生控件当中,用法最复杂的应该就是ListView了,它专门用于处理那种内容元素很多,手机屏幕无法展示出所有内容的情况。ListView可以使用列表的形式来展示内容,超出屏幕部分的内容只需要通过手指滑动就可以移动到屏幕内了。另外ListView还有一个非常神奇的功能,我相信大家应该都体验过,即使在ListView中加载非常非常多的数据,比如达到成百上千条甚至更多,

2015-11-13 15:45:32 418

转载 Android属性动画完全解析(下),Interpolator和ViewPropertyAnimator的用法

Interpolator这个东西很难进行翻译,直译过来的话是补间器的意思,它的主要作用是可以控制动画的变化速率,比如去实现一种非线性运动的动画效果。那么什么叫做非线性运动的动画效果呢?就是说动画改变的速率不是一成不变的,像加速运动以及减速运动都属于非线性运动。不过Interpolator并不是属性动画中新增的技术,实际上从Android 1.0版本开始就一直存在Interpolator接口

2015-11-13 15:24:15 280

转载 Android属性动画完全解析(中),ValueAnimator和ObjectAnimator的高级用法

在上篇文章中介绍补间动画缺点的时候有提到过,补间动画是只能对View对象进行动画操作的。而属性动画就不再受这个限制,它可以对任意对象进行动画操作。那么大家应该还记得在上篇文章当中我举的一个例子,比如说我们有一个自定义的View,在这个View当中有一个Point对象用于管理坐标,然后在onDraw()方法当中就是根据这个Point对象的坐标值来进行绘制的。也就是说,如果我们可以对Point对象进行

2015-11-13 15:00:25 244

转载 Android属性动画完全解析(上)

在手机上去实现一些动画效果算是件比较炫酷的事情,因此Android系统在一开始的时候就给我们提供了两种实现动画效果的方式,逐帧动画(frame-by-frame animation)和补间动画(tweened animation)。逐帧动画的工作原理很简单,其实就是将一个完整的动画拆分成一张张单独的图片,然后再将它们连贯起来进行播放,类似于动画片的工作原理。补间动画则是可以对View进行一系列的动

2015-11-13 14:42:09 289

转载 Android Animation简述

Animation动画效果。提供了一系列的动画效果,可以应用大多数 的控件。一、Animations从总体上来说可以分为两大类:1、TweenedAnimations:该类提供了旋转,移动,伸展,和淡出竺效果;2、Frame-by-FrameAmimations:这一类可以创建一个Drawable序列:这些Drawable可以按照指定的时间间歇一个一个的显示。二

2015-11-13 14:34:10 290

转载 android内存泄漏分析

虽说现在的手机内存都已经非常大了,但是我们大家都知道,系统是不可能将所有的内存都分配给我们的应用程序的。没错,每个程序都会有可使用的内存上限,这被称为堆大小(Heap Size)。不同的手机,堆大小也不尽相同,随着现在硬件设备不断提高,堆大小也已经由Nexus One时的32MB,变成了Nexus 5时的192MB。如果大家想要知道自己手机的堆大小是多少,可以调用如下代码:[jav

2015-11-12 17:46:47 335

转载 android任务和返回栈完全解析

一个应用程序当中通常都会包含很多个Activity,每个Activity都应该设计成为一个具有特定的功能,并且可以让用户进行操作的组件。另外,Activity之间还应该是可以相互启动的。比如,一个邮件应用中可能会包含一个用于展示邮件列表的Activity,而当用户点击了其中某一封邮件的时候,就会打开另外一个Activity来显示该封邮件的具体内容。除此之外,一个Activity甚至还可以去

2015-11-12 17:33:17 394

转载 android service完全解析(下)

,Service其实是运行在主线程里的,如果直接在Service中处理一些耗时的逻辑,就会导致程序ANR。让我们来做个实验验证一下吧,修改上一篇文章中创建的ServiceTest项目,在MyService的onCreate()方法中让线程睡眠60秒,如下所示:[java] view plaincopypublic class MyServ

2015-11-12 17:09:56 292

转载 android service完全解析(上)

Service的基本用法关于Service最基本的用法自然就是如何启动一个Service了,启动Service的方法和启动Activity很类似,都需要借助Intent来实现,下面我们就通过一个具体的例子来看一下。新建一个Android项目,项目名就叫ServiceTest,这里我选择使用4.0的API。然后新建一个MyService继承自Service,并重写父类

2015-11-12 17:01:33 307

转载 Android数据库加解密(SQLCipher)

Android系统内置了SQLite数据库,并且提供了一整套的API用于对数据库进行增删改查操作。数据库存储是我们经常会使用到的一种存储方式,相信大多数朋友对它的使用方法都已经比较熟悉了吧。在Android中,我们既可以使用原生的SQL语句来对数据进行操作,也可以使用Android API提供的CRUD方法来对数据库进行操作,两种方式各有特点,选择使用哪一种就全凭个人喜好了。不过,使用

2015-11-12 16:31:29 379

转载 Android AsyncTask完全解析(源码角度)

为了更加方便我们在子线程中更新UI元素,Android从1.5版本就引入了一个AsyncTask类,使用它就可以非常灵活方便地从子线程切换到UI线程,我们本篇文章的主角也就正是它了。AsyncTask很早就出现在Android的API里了,所以我相信大多数朋友对它的用法都已经非常熟悉。不过今天我还是准备从AsyncTask的基本用法开始讲起,然后我们再来一起分析下AsyncTask源码,看

2015-11-12 16:26:14 371

转载 Android异步消息处理机制完全解析(源码角度)

Android UI是线程不安全的,如果在子线程中尝试进行UI操作,程序就有可能会崩溃。相信大家在日常的工作当中都会经常遇到这个问题,解决的方案应该也是早已烂熟于心,即创建一个Message对象,然后借助Handler发送出去,之后在Handler的handleMessage()方法中获得刚才发送的Message对象,然后在这里进行UI操作就不会再出现崩溃了。这种处理方式被称为异步消息处理线程

2015-11-12 16:15:35 321

转载 Android自定义View的实现方法,深入了解View(四)

一些接触Android不久的朋友对自定义View都有一丝畏惧感,总感觉这是一个比较高级的技术,但其实自定义View并不复杂,有时候只需要简单几行代码就可以完成了。如果说要按类型来划分的话,自定义View的实现方式大概可以分为三种,自绘控件、组合控件、以及继承控件。那么下面我们就来依次学习一下,每种方式分别是如何自定义View的。一、自绘控件自绘控件的意思就是,这个View上

2015-11-12 15:59:58 292

转载 Android视图状态及重绘流程分析,深入了解View(三)

相信大家在平时使用View的时候都会发现它是有状态的,比如说有一个按钮,普通状态下是一种效果,但是当手指按下的时候就会变成另外一种效果,这样才会给人产生一种点击了按钮的感觉。当然了,这种效果相信几乎所有的Android程序员都知道该如何实现,但是我们既然是深入了解View,那么自然也应该知道它背后的实现原理应该是什么样的,今天就让我们来一起探究一下吧。一、视图状态视图状态的种类非常

2015-11-12 15:49:37 500

转载 Android视图绘制流程完全解析,深入了解View(二)

相信每个Android程序员都知道,我们每天的开发工作当中都在不停地跟View打交道,Android中的任何一个布局、任何一个控件其实都是直接或间接继承自View的,如TextView、Button、ImageView、ListView等。这些控件虽然是Android系统本身就提供好的,我们只需要拿过来使用就可以了,但你知道它们是怎样被绘制到屏幕上的吗?多知道一些总是没有坏处的,那么我们赶快进入到

2015-11-12 15:34:54 547

转载 LayoutInflater原理分析,深入了解View(一)

相信接触Android久一点的朋友对于LayoutInflater一定不会陌生,都会知道它主要是用于加载布局的。而刚接触Android的朋友可能对LayoutInflater不怎么熟悉,因为加载布局的任务通常都是在Activity中调用setContentView()方法来完成的。其实setContentView()方法的内部也是使用LayoutInflater来加载布局的,只不过这部分源码是in

2015-11-12 15:19:05 426

转载 Trinea性能优化之性能优化实例

本文主要分享自己在appstore项目中的性能调优点,包括同步改异步、缓存、Layout优化、数据库优化、算法优化、延迟执行等。 目前性能优化专题已完成以下部分:性能优化总纲——性能问题及性能调优方式性能优化第四篇——移动网络优化性能优化第三篇——Java(Android)代码优化性能优化第二篇——布局优化性能优化第一篇——数据库性能优化性能

2015-11-09 19:57:31 464

转载 Trinea性能优化之移动端的网络优化

介绍下针对移动端的网络优化,不限于 Android,同样适用于 iOS 和 H5。这篇文章首发在微信公众号 codekk。 本文为性能优化系列第四篇,目前性能调优专题已完成以下部分:性能优化总纲——性能问题及性能调优方式性能优化第四篇——移动网络优化性能优化第三篇——代码优化性能优化第二篇——布局优化性能优化第一篇——数据库性能优化Android 性能调

2015-11-09 19:50:13 321

转载 Trinea性能优化之Java(Android)代码优化

本文为Android性能优化的第三篇——Java(Android)代码优化。主要介绍Java代码中性能优化方式及网络优化,包括缓存、异步、延迟、数据存储、算法、JNI、逻辑等优化方式。(时间仓促,后面还会继续完善^_*) 目前性能优化专题已完成以下部分:性能优化总纲——性能问题及性能调优方式性能优化第四篇——移动网络优化性能优化第三篇——Java(Andro

2015-11-09 19:46:07 370

转载 Trinea性能优化之布局优化

本文为Android性能优化的第二篇——布局优化,主要介绍使用抽象布局标签(include, viewstub, merge)、去除不必要的嵌套和View节点、减少不必要的infalte及其他Layout方面可调优点,顺带提及布局调优相关工具(hierarchy viewer和lint)。 目前性能优化专题已完成以下部分:性能优化总纲——性能问题及性能调优方式性能优

2015-11-09 19:40:13 327

转载 Trinea性能优化系列之数据库优化

本文为性能优化的第一篇——数据库性能优化,原理适用于大部分数据库包括Sqlite、Mysql、Oracle、Sql server,详细介绍了索引(优缺点、分类、场景、规则)和事务,最后介绍了部分单独针对Sqlite的优化。 目前性能优化专题已完成以下部分:性能优化总纲——性能问题及性能调优方式性能优化第四篇——移动网络优化性能优化第三篇——Java(Andr

2015-11-09 19:33:00 306

转载 Trinea性能优化系列总篇

性能优化系列总篇本文为性能优化系列的总纲,主要介绍性能调优专题计划、何为性能问题、性能调优方式及前面介绍的数据库优化、布局优化、Java(Android)代码优化、网络优化具体对应的调优方式。 1、调优专题博客计划目前性能优化专题已完成以下部分:性能优化总纲——性能问题及性能调优方式性能优化第四篇——移动网络优化性能优化第三篇——Java

2015-11-09 16:21:28 333

转载 Android性能优化典范C3

Android性能优化典范的课程最近更新到第三季,共包含12个短视频,内容大致有:更高效的ArrayMap容器、使用Android系统提供的特殊容器来避免自动装箱、避免使用枚举类型、注意onLowMemory与onTrimMemory的回调等。

2015-11-09 16:08:36 404

转载 Android性能优化典范C2

Android性能优化典范的课程最近更新到第三季,共包含12个短视频,内容大致有:更高效的ArrayMap容器、使用Android系统提供的特殊容器来避免自动装箱、避免使用枚举类型、注意onLowMemory与onTrimMemory的回调等

2015-11-09 15:57:24 384

转载 Android性能优化典范C1

Android性能优化典范的课程最近更新到第三季了,这次一共12个短视频课程,包括的内容大致有:更高效的ArrayMap容器,使用Android系统提供的特殊容器来避免自动装箱,避免使用枚举类型,注意onLowMemory与onTrimMemory的回调,避免内存泄漏,高效的位置更新操作,重复layout操作的性能影响,以及使用Batching,Prefetching优化网络请求,压缩传输数据等等

2015-11-09 15:49:32 345

转载 Android性能优化典范B4

Google于不久前发布了Android性能优化典范第2季课程,共有20个短视频,内容涵盖电量优化、Android Wear上如何做优化、LRU Cache、Bitmap的缩放、提升设置alpha之后View的渲染性能等。本文是对这些课程的总结摘要。

2015-11-09 15:23:50 383

转载 Android性能优化典范(B3)

Google于不久前发布了Android性能优化典范第2季课程,共有20个短视频,内容涵盖电量优化、Android Wear上如何做优化、LRU Cache、Bitmap的缩放、提升设置alpha之后View的渲染性能等。本文是对这些课程的总结摘要。

2015-11-09 15:16:52 367

转载 Android性能优化典范(B2)

Google于不久前发布了Android性能优化典范第2季课程,共有20个短视频,内容涵盖电量优化、Android Wear上如何做优化、LRU Cache、Bitmap的缩放、提升设置alpha之后View的渲染性能等。本文是对这些课程的总结摘要。

2015-11-09 15:04:11 300

转载 Android性能优化典范(B1)

Google于不久前发布了Android性能优化典范第2季课程,共有20个短视频,内容涵盖电量优化、Android Wear上如何做优化、LRU Cache、Bitmap的缩放、提升设置alpha之后View的渲染性能等。本文是对这些课程的总结摘要。

2015-11-09 14:58:33 348

转载 Android性能优化典范(A3)--电量优化

新年伊始,Google发布了包含16个短视频的Android性能优化典范专题,详解Android系统中有关性能问题的底层工作原理,并介绍了如何通过工具找出性能问题以及提升性能的建议。本文作者对这些问题和建议进行了总结梳理。

2015-11-09 14:44:33 508

转载 Android性能优化典范(A2)--内存优化

新年伊始,Google发布了包含16个短视频的Android性能优化典范专题,详解Android系统中有关性能问题的底层工作原理,并介绍了如何通过工具找出性能问题以及提升性能的建议。本文作者对这些问题和建议进行了总结梳理。

2015-11-09 14:41:31 392

转载 Android性能优化典范(A1)----渲染机制

新年伊始,Google发布了包含16个短视频的Android性能优化典范专题,详解Android系统中有关性能问题的底层工作原理,并介绍了如何通过工具找出性能问题以及提升性能的建议。本文作者对这些问题和建议进行了总结梳理

2015-11-09 14:36:33 327

原创 aidl详解:同一APK内,不同apk间的activty与service通信

1.什么是aidl:aidl是 Android Interface definition language的缩写,一看就明白,它是一种android内部进程通信接口的描述语言,通过它我们可以定义进程间的通信接口icp:interprocess communication :内部进程通信 2.既然aidl可以定义并实现进程通信,那么我们怎么使用它呢?文档/android-sdk/

2015-11-06 16:43:04 1311

转载 子网划分

一、子网掩码的换算:  在一个网络里面的子网掩码的计算,是以网络中有多少台主机来计算的。比如说一B类IP地址为172.16.0.0的网络划分成若干子网,要求每个子网内有主机数为500台,则该子网掩码的计算方法基本步骤如下:  第一步,首先将子网中要求容纳的主机数“500”转换成二进制,得到100000100。  第二步,计算出该二进制的位数为10位,即n =10。  第三步,将25

2015-11-05 09:18:50 1911 1

转载 java.util.Queue简述

java中queue的使用Queue接口与List、Set同一级别,都是继承了Collection接口。LinkedList实现了Queue接 口。Queue接口窄化了对LinkedList的方法的访问权限(即在方法中的参数类型如果是Queue时,就完全只能访问Queue接口所定义的方法 了,而不能直接访问 LinkedList的非Queue的方法),以使得只有恰当的方法才可以使用。B

2015-11-04 10:23:23 347

转载 java BigInteger

用Java来处理高精度问题,相信对很多ACMer来说都是一件很happy的事,简单易懂。用Java刷了一些题,感觉Java还不错,在处理高精度和进制转换中,调用库函数的来处理。下面是写的一些Java中一些基本的函数的及其……头文件:import java.io.*;import java.util.*;import java.math.*;读入: Scanner c

2015-11-04 09:43:19 369

转载 android正则表达式

要严格的验证手机号码,必须先要清楚现在已经开放了哪些数字开头的号码段,目前国内号码段分配如下:移动:134、135、136、137、138、139、150、151、157(TD)、158、159、187、188联通:130、131、132、152、155、156、185、186电信:133、153、180、189、(1349卫通)验证手机号:

2015-11-04 09:27:00 267

FreeImage图形库说明文档(中文版)

最好最全的freeimage中文文档

2016-10-20

两个APK间AIDL通信

两个APK间AIDL通信

2015-11-06

两个APK间AIDL通信

两个APK间AIDL通信两个APK间AIDL通信两个APK间AIDL通信两个APK间AIDL通信

2015-11-06

同APK内AIDL通信

同APK内AIDL通信

2015-11-06

Bitmap全面解析

bitmap,UIL,imageloader,volley,极全面的android bitmap处理

2015-10-10

html入门教程通俗易懂,零基础

html入门教程适合初学者(通俗易懂),本人在学习jsoup解析html时获得此文档,从零开始学习,比较容易上手

2015-10-10

android程序员面试宝典

Android高薪之路:Android程序员面试宝典,高清电子书,个人已阅,好书不忍独享

2014-03-27

空空如也

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

TA关注的人

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