自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 问答 (1)
  • 收藏
  • 关注

原创 android 图片的三级缓存原理

android 图片的三级缓存有:缓存在内存中 缓存在SD卡里, 联网缓存用AsyncTask进行网络下载  并将之存储到SD卡里,然后再存储到内存中存储到内存中和从SD卡里读取图片都要解决OOM异常Bitmap bitmap = BitmapFactory.decodeFile(file.getAbsolutePath(), opts);Options opts = ne

2015-12-31 17:02:41 499

转载 Android中Canvas绘图详解

Android中,如果我们想绘制复杂的自定义View或游戏,我们就需要熟悉绘图API。Android通过Canvas类暴露了很多drawXXX方法,我们可以通过这些方法绘制各种各样的图形。Canvas绘图有三个基本要素:Canvas、绘图坐标系以及Paint。Canvas是画布,我们通过Canvas的各种drawXXX方法将图形绘制到Canvas上面,在drawXXX方法中我们需要传入要绘制的图形

2015-12-31 17:00:50 550

原创 android中Invalidate和postInvalidate的用法

Android中实现view的更新有两组方法,一组是invalidate,另一组是postInvalidate,其中前者是在UI线程自身中使用,而后者在非UI线程中使用。 Android提供了Invalidate方法实现界面刷新,但是Invalidate不能直接在线程中调用,因为他是违背了单线程模型:Android UI操作并不是线程安全的,并且这些操作必须在UI线程中调用。   An

2015-12-31 16:56:01 424

原创 AsyncTask原理精简版

AsyncTask有三个主要的方法onPreExecute()doInBackground(String...paramsonPostExecute()创建AsyncTask对象需要重写一个类继承Asynctask,因为AsyncTask本身是抽象类new Asynctask().execute(Params...params)(从此处入口这个方法体里就调用了onP

2015-12-31 16:53:01 216

原创 Android中AsyncTask的使用方法解析

在Android中实现异步任务机制有两种方式,Handler和AsyncTask。Handler模式需要为每一个任务创建一个新的线程,任务完成后通过Handler实例向UI线程发送消息,完成界面的更新,这种方式对于整个过程的控制比较精细,但也是有缺点的,例如代码相对臃肿,在多个任务同时执行时,不易对线程进行精确的控制。为了简化操作,Android1.5提供了工具类android.os.As

2015-12-31 16:51:42 217

原创 handler机制原理之精简版

handler机制精简版,通俗易懂!在应用启动的时候,会启动ActivityThread,在其main方法中Looper.prepareMainLooper()prepare方法是在prepareMainLooper中调用的,prepare里面主要是进行setLooper在往ThredLocal里setLooper时发现,Looper是直接new出来的,

2015-12-31 16:48:40 245

转载 Android 编程下 Touch 事件的分发和消费机制

Android 中与 Touch 事件相关的方法包括:dispatchTouchEvent(MotionEvent ev)、onInterceptTouchEvent(MotionEvent ev)、onTouchEvent(MotionEvent ev);能够响应这些方法的控件包括:ViewGroup、View、Activity。方法与控件的对应关系如下表所示:Tou

2015-12-31 16:43:40 216

转载 使用Eclipse+NDK编译arm64-v8a CPU架构的speex.so文件

随着处理器制造工艺的不断进步,和Android系统的不断发展,最近出了arm64-v8a的架构,由于项目中用到了speex的第三方语音编解码的动态库,其他架构的处理器暂不用说,一切正常,唯独到arm64-v8a这里出问题了,在Android5.0 arm64位的手机上使用语音会报错,关于其他架构的.so文件编译不再赘述,网上都有资料。废话少说,直接上步骤:1.下载android-ndk-r

2015-12-31 16:41:14 801

原创 android 如何兼容32位的库文件

开发的时候需要使用高德地图,现在的android机子已经逐步向64位发展,在客户使用的时候有反馈收到64位机子运行会挂掉后来向高德论坛反映兼容库包问题,没有收到回复于是想在studio上兼容用到32位的地图库文件,如何使用呢在build.gradle中加上defaultConfig { ndk { abiFilters "armeabi", "armea

2015-12-31 16:30:43 1377

转载 Android RecyclerView 使用完全解析 体验艺术般的控件

转载请标明出处: http://blog.csdn.net/lmj623565791/article/details/45059587;本文出自:【张鸿洋的博客】概述RecyclerView出现已经有一段时间了,相信大家肯定不陌生了,大家可以通过导入support-v7对其进行使用。 据官方的介绍,该控件用于在有限的窗口中展示大量数据集,其实这样功能的控件我们并不陌生,

2015-12-31 16:26:50 485

空空如也

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

TA关注的人

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