2015年2月27日

2015年2月27日

只有注册用户登录后才能阅读该文。 阅读全文

posted @ 2015-02-27 21:27 foolchen 阅读(10) 评论(0) 推荐(0) 编辑

2014年5月10日

高效地加载图片(五) 将图片展示在UI中

摘要: 这篇文章将前几篇使用的方法进行了整合,让我们能够在后台线程中加载以及缓存图片并在ViewPager和GridView中展示出来,并在这些过程中处理并发以及参数的设置. 将图片加载到ViewPager中 使用滑动视图来对图片详情进行导航是一种不错的方式.我们可以使用ViewPager和PagerAdapter来实现.但是,使用FragmentStatePagerAdapter可能会更好,它能够自动地... 阅读全文

posted @ 2014-05-10 18:44 foolchen 阅读(462) 评论(0) 推荐(0) 编辑

2014年5月9日

高效地加载图片(四) 管理缓存

摘要: 除了缓存图片意外,还有一些其他的方式来促进GC的效率和图片的复用.不同的Android系统版本有不同的处理策略.BitmapFun中就包含了这个类,能够使我们高效地构建我们的项目. 为了开始以下教程,我们需要先介绍一下Android系统对Bitmap管理的进化史. 在Android2.2(API level 8)以及更低的版本中,当垃圾被回收时,应用的线程会被停止,这会造成一定程度的延时.在A... 阅读全文

posted @ 2014-05-09 21:40 foolchen 阅读(757) 评论(0) 推荐(0) 编辑

2014年5月4日

高效地加载图片(三) 缓存图片

摘要: 如果只需要加载一张图片,那么直接加载就可以.但是,如果要在类似ListView,GridView或者ViewPager的控件中加载大量的图片时,问题就会变得复杂.在使用这类控件时,在短时间内可能会显示在屏幕上的图片数量是不固定的. 这类控件会通过子View的复用来保持较低的内存占用.而Garbage Collector也会在View被复用时释放对应的Bitmap,保证这些没用用到的Bitmap不会... 阅读全文

posted @ 2014-05-04 22:17 foolchen 阅读(869) 评论(0) 推荐(0) 编辑

2014年4月26日

高效地加载图片(二) 在UI线程外处理图片

摘要: 在使用BitmapFactory.decode*方法解析图片时,如果要读取的图片在SD卡上或者网络位置(或者任何内存意外的位置),则该过程不能在主线程中执行. 因为这个过程所耗费的时间是不确定的,这个时间跟多种因素有关(从磁盘或者网络读取数据的速度,图片的大小,CPU的工作效率等).如果这其中的某一项阻塞了UI线程的执行,则就会出现ANR异常. 使用异步任务处理图片 AsyncTask为我们提供了... 阅读全文

posted @ 2014-04-26 23:29 foolchen 阅读(244) 评论(0) 推荐(0) 编辑

高效地加载图片(一) 高效地加载大图

摘要: 1.Read Bitmap Dimensions and Type 读取图片的尺寸和类型 //创建一个Options,用于保存图片的参数 BitmapFactory.Options options = new BitmapFactory.Options(); //设置是否只读取图片的参数信息 options.inJustDecodeBounds = true; //由于inJustDecodeB... 阅读全文

posted @ 2014-04-26 21:58 foolchen 阅读(610) 评论(0) 推荐(0) 编辑

2013年8月18日

初学JNI(二)调用C\C++中的方法

摘要: 布局文件: Java代码:public class MyActivity extends Activity implements View.OnClickListener { DataProvider mPro; /** * 使用静态代码块加载库文件 */ static { System.loadLibrar... 阅读全文

posted @ 2013-08-18 18:26 foolchen 阅读(805) 评论(0) 推荐(0) 编辑

初学JNI(一)环境配置及调用流程

摘要: 1.搭建环境 安装Cygwin(Cygwin是在Windows平台下模拟Linux环境的工具。) 安装NDK http://developer.android.com/tools/sdk/ndk/index.html 配置环境变量: 1.1.使用Cygwin提供的命令行工具,使用 cd ..命令回到home路径 1.2.进入/cygdrive路径,找到自己NDK的安装路径,然后复制当前命... 阅读全文

posted @ 2013-08-18 18:08 foolchen 阅读(591) 评论(0) 推荐(0) 编辑

2013年8月13日

关于Handler的使用

摘要: 在Android中,对UI的直接修改只能在UI线程中才能进行,在子线程中是无法修改的。 而为了能够控制UI的修改,我们可以使用Handler来对UI进行操作。 第一种方式: 我们可以在主线程中创建一个Handler对象,然后将Handler的引用给子线程;子线程中可以使用Handler.sendEmptyMessage(int)或者Handler.sendMessage(Message)来... 阅读全文

posted @ 2013-08-13 22:41 foolchen 阅读(399) 评论(0) 推荐(0) 编辑

2013年4月21日

Android基础(十) Service 服务

摘要: 1.什么时Service Service也是Android的四大组件之一。 Service时一种可以长期在后台运行,没有界面的组件。由其他组件调用开始运行。 2.定义Service 需要定义一个类继承Service,而且要在清单文件AndroidManifest.xml定义<service>节点;如果需要使用隐式意图启动,还需要配置<intent-filter>和<action>。 3.启动... 阅读全文

posted @ 2013-04-21 21:04 foolchen 阅读(348) 评论(0) 推荐(0) 编辑

导航