摘要: 异步加载图片第一种 Handler+Thread+post,加载图像方法如下所示:使用post方法将Runnable对象放到Handler的线程队列中,该Runnable的执行其实并未单独开启线程,而是仍然在当前Activity的UI线程中执行,Handler只是调用了Runnable对象的run方法。 private void loadImage(final String url, final int id) { new Thread(){ public void run(){ handler.post(new Runnable() { ... 阅读全文
posted @ 2014-04-12 19:11 不忘初心,方得始终 阅读(1048) 评论(0) 推荐(0)
摘要: Android图片异步加载 开发Android程序,一般情况下都会有两个操作,图片的异步加载与缓存, 而图片的异步加载大都是从网络读取图片(还有生成本地图片缩略图等操作),为了减少网络操作,加快图片加载速度就需要对图片进行缓存,所以网上的好多图片 异步加载方法都是与图片的缓存紧密关联的。但也有可能用户已经有了缓存的相关类库,这样使用起来就会有点麻烦。 最近一段处理跟图片相关的问题,本来是自己写的图片加载,不过有些状态的控制还是比较烦人的,比如ListView滚动时ImageView的 重用,所以本着偷懒与充分利用现有资源的态度去网上搜罗图片异步加载的代码,最终在GreenDroid UI库.. 阅读全文
posted @ 2014-04-12 16:21 不忘初心,方得始终 阅读(177) 评论(0) 推荐(0)
摘要: 在Android中的职责Message:消息,其中包含了消息ID,消息处理对象以及需要处理的任意类型的数据等,由MessageQueue统一列队,终由Handler处理。Handler:既是消息的发送者也是消息的处理者,负责Message的发送及处理。使用Handler时,需要实现handleMessage(Messagemsg)方法来对特定的Message进行处理,例如更新UI等。MessageQueue:消息队列,用来存放Handler发送过来的消息,并按照FIFO的原则。然而存放并非实际意义上的存放,而是将Message以链表的方式串联起来的,等待Looper的抽取。Looper:消息循 阅读全文
posted @ 2014-04-05 14:10 不忘初心,方得始终 阅读(370) 评论(0) 推荐(0)
摘要: AIDL的英文全称是Android Interface Define Language当A进程要去调用B进程中的service时,并实现通信,我们通常都是通过AIDL来操作的A工程:首先我们在com.zsw.aidlservice包中创建一个RemoteService.aidl文件,在里面我们自定义一个接口,含有方法get。ADT插件会在gen目录下自动生成一个RemoteService.java文件,该类中含有一个名为RemoteService.stub的内部类,该内部类中含有aidl文件接口的get方法。说明一:aidl文件的位置不固定,可以任意然后定义自己的MyService类,在MyS 阅读全文
posted @ 2014-04-05 13:15 不忘初心,方得始终 阅读(371) 评论(0) 推荐(0)
摘要: Android中自定义文件必须放在资产文件夹下asset1.用WebView来显示HTML代码2.允许WebView执行JavaScriptwebView.getSettings().setJavaScriptEnabled(true);3.获取到HTML文件,也可从网络中获取webView.loadUrl("file:///android_asset/test.html");//HTML文件存放在assets文件夹中4.使用addJavascriptInterface添加一个android中的某个类的对象,让JS可以访问该对象的方法,该对象中也可以调用JS中的方法webV 阅读全文
posted @ 2014-04-05 12:33 不忘初心,方得始终 阅读(610) 评论(0) 推荐(0)
摘要: 在android中jni的调用过程 1)安装和下载Cygwin,下载AndroidNDK。自己补上:Aygwin模拟一个linux环境,相当于android用的eclipse2)在ndk项目中进行JNI接口的设计。导入so文件3)使用C/C++实现本地方法自定义在c文件里的方法4)JNI生成动态链接库.so文件5)将动态链接库复制到java工程,在java工程中调用,运行java工程即可/***android项目发布之后,被人通过反编译并破解了WebService接口地址以及参数的定义,*因此需要想办法对传输的数据进行加密,考虑到Java代码存在被反编译的问题,最终采用了AndroidNDK来 阅读全文
posted @ 2014-04-04 11:23 不忘初心,方得始终 阅读(1729) 评论(0) 推荐(0)
摘要: 最近在做一款播放器,服务器为tomcat,将音乐所有信息放在服务器端,客户端与服务器端之间的通信是同http协议进行的。首先把服务器端的数据部署完成,然后客户端采用pull解析器将服务器端传过来的实体对象解析成music对象,再将需要显示的数据(包括文本和图片)利用自定义的适配器显示在listview上。现在,本人将文本通过异步加载的方式显示在listview上,而图片则通过线程+handler机制来加载和更新,并将图片作为缓存存到内存和文件。。。具体实现代码如下:实体类:Music.java 1 package com.zsw.entity; 2 3 public class Mus... 阅读全文
posted @ 2014-03-02 22:34 不忘初心,方得始终 阅读(1120) 评论(0) 推荐(0)
摘要: 最近有人跟我说关于mysql中文乱码的问题,最终总结如下:1)在mysql客户端下查询数据之前先:set names gbk; 2)在连接mysql数据库过程中设置编码:jdbc:mysql://localhost:3306/xxx.db?useUnicode=true&characterEncoding=utf-8; 作用是:指定字符的编码、解码格式。 假设你mysql数据库使用的编码格式是gbk,而项目那边设置的是utf-8编码格式,则useUnicode=true&characterEncoding=utf-8的作用可分为如下两步: a. 存数据时: 数据库在存放项目数据 阅读全文
posted @ 2014-02-23 23:27 不忘初心,方得始终 阅读(175) 评论(0) 推荐(0)