开源的Android开发框架-------PowerFramework使用心得(二)图片异步加载ImageTask
图片异步加载。可以备注图片是否缓存、缓存状态。
1、缓存-SD卡,路径可设置
2、图片压缩
3、可加载本地和网络图片
4、url为本地视频文件可以显示缩略图
5、中文url图片地址FileNotFoundException解决
EditText input = (EditText) findViewById(R.id.input);
ImageView img = (ImageView) findViewById(R.id.img);
RadioButton radio1 = (RadioButton) findViewById(R.id.radio1);
RadioButton radio2 = (RadioButton) findViewById(R.id.radio2);
RadioButton radio3 = (RadioButton) findViewById(R.id.radio3);
String url = input.getText().toString();
ImageTask task = new ImageTask(img,"/mnt/sdcard/",new ImageTaskListener() { @Override
public void onTaskOver(ImageView img) {
// TODO Auto-generated method stub
Log.e("loadImg", "图片下载完成");
} @Override
public void onDownloading(int max, int progress) {
Log.e("loadImg", "图片下载进度:" + progress + "/" + max);
}
});
ImageTaskOpion option = task.getImageTaskOpion();
option.setAutoVisibility(radio1.isChecked());
option.setOverlap(radio2.isChecked());
option.setAutoCompress(radio3.isChecked());
task.setOption(option);
task.execute(url);
以上是框架里面的代码。
下面看看如何在自己的代码里面进行调用。
public class ImageTaskActivity extends Activity implements OnClickListener {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_image_task);
}
@Override
public void onClick(View v) {
switch(v.getId()){
case R.id.btnExecute:
loadImg();
break;
}
}
private void loadImg(){
EditText input = (EditText) findViewById(R.id.input);
ImageView img = (ImageView) findViewById(R.id.img);
RadioButton radio1 = (RadioButton) findViewById(R.id.radio1);
RadioButton radio2 = (RadioButton) findViewById(R.id.radio2);
RadioButton radio3 = (RadioButton) findViewById(R.id.radio3);
String url = input.getText().toString();
ImageTask task = new ImageTask(img,"/mnt/sdcard/",new ImageTaskListener() {
@Override
public void onTaskOver(ImageView img) {
// TODO Auto-generated method stub
Log.e("loadImg", "图片下载完成");
}
@Override
public void onDownloading(int max, int progress) {
Log.e("loadImg", "图片下载进度:" + progress + "/" + max);
}
});
ImageTaskOpion option = task.getImageTaskOpion();
option.setAutoVisibility(radio1.isChecked());
option.setOverlap(radio2.isChecked());
option.setAutoCompress(radio3.isChecked());
task.setOption(option);
task.execute(url);
}
}
DEMO文件的运行效果:

框架和DEMO文件下载地址 http://www.ideayapai.com/Application/Home/View/default/PowerFamily/index-2.htm
欢迎各位大牛、大神莅临QQ群进行交流:575026537
开源的Android开发框架-------PowerFramework使用心得(二)图片异步加载ImageTask的更多相关文章
- 开源的Android开发框架-------PowerFramework使用心得(一)总体介绍
PowerFramework是一款几乎囊括了所有Android基础功能的框架应用,这个框架目前是开源的,开发者可以在这个框架的基础上进行二次开发.结合开发者自己的UI设计,可以很快就能开发出具备基础应 ...
- 开源的Android开发框架-------PowerFramework使用心得(五)网络请求HTTPRequest
GET请求示例 //所有参数都使用Bundle,用putString Bundle bundle = new Bundle(); bundle.putString("username&quo ...
- 开源的Android开发框架-------PowerFramework使用心得(四)数据库管理DBFarmer
DBFarmer是PowerFramework数据库管理工具的集合. 可以进行对象的存储,添加了setter和getter的参数会被收录到数据库中,每个参数作为一个项,int类型的id或_id会被作为 ...
- 开源的Android开发框架-------PowerFramework使用心得(三)内置浏览器BrowserActivity
使用内置浏览器必须是引用源码的方式(因为jar中不能打包布局文件等资源).内置浏览器是一个继承自BaseActivity的普通Activity,使用WebView实现. 1.简单的打开内置浏览器 In ...
- Android图片异步加载之Android-Universal-Image-Loader
将近一个月没有更新博客了,由于这段时间以来准备毕业论文等各种事务缠身,一直没有时间和精力沉下来继续学习和整理一些东西.最近刚刚恢复到正轨,正好这两天看了下Android上关于图片异步加载的开源项目,就 ...
- Android图片异步加载之Android-Universal-Image-Loader(转)
今天要介绍的是Github上一个使用非常广泛的图片异步加载库Android-Universal-Image-Loader,该项目的功能十分强大,可以说是我见过的目前功能最全.性能最优的图片异步加载解决 ...
- [置顶] Android图片异步加载之Android-Universal-Image-Loader
将近一个月没有更新博客了,由于这段时间以来准备毕业论文等各种事务缠身,一直没有时间和精力沉下来继续学习和整理一些东西.最近刚刚恢复到正轨,正好这两天看了下Android上关于图片异步加载的开源项目,就 ...
- Android图片异步加载框架Android-Universal-Image-Loader
版权声明:本文为博主原创文章,未经博主允许不得转载. Android-Universal-Image-Loader是一个图片异步加载,缓存和显示的框架.这个框架已经被很多开发者所使用,是最常用的几个 ...
- Android新浪微博客户端(七)——ListView中的图片异步加载、缓存
原文出自:方杰|http://fangjie.info/?p=193转载请注明出处 最终效果演示:http://fangjie.sinaapp.com/?page_id=54 该项目代码已经放到git ...
随机推荐
- C# 关于NULL 可空值类型 ? 和空接操作符??
作者 陈嘉栋(慕容小匹夫) C#引入了可空值类型的概念.在介绍究竟应该如何使用可空值类型之前,让我们先来看看在基础类库中定义的结构--System.Nullable<T>.以下代码便是Sy ...
- How to solve "The specified service has been marked for deletion" error
There may be several causes which lead to the service being stuck in “marked for deletion”. Microsof ...
- Maximum Submatrix 2
Codeforces Round #221 (Div. 1) B:http://codeforces.com/problemset/problem/375/B 题意:给你一个n*m的0,1矩阵,你可以 ...
- Cognos请求流程——<转>
访问Cognos8 匿名访问 用户通过浏览器发起Cognos访问请求,请求被送至Cognos Gateway Gateway接收请求并发送给一个dispatcher dispatcher发现请求没有附 ...
- 模拟键盘发送文字(使用SendInput函数)
嗯...老生常谈的话题, 不过系统的总结了一下, 找了个相对简单的实现方式, 可以方便的发送任何文字 参考另一片文章: http://www.cnblogs.com/-clq/archive/2011 ...
- FindControl什么时候才会使用ObjectFromHWnd函数呢?——VCL很难调试,加一个日志函数,记录时间
IsDelphiHandleFindVCLWindowfunction IsVCLControl(Handle: HWND): Boolean;function FindControl(Handle: ...
- spoj-694-Distinct Substrings(后缀数组)
题意: 给定一个字符串,求不相同的子串的个数 分析: 每个子串一定是某个后缀的前缀,那么原问题等价于求所有后缀之间的不相同 的 前 缀 的 个 数 . 如 果 所 有 的 后 缀 按 照 suffix ...
- -_-#【jQuery插件】Colorpicker 颜色选择器
Spectrum - The No Hassle jQuery Colorpicker (jQuery 插件) Color Picker jQuery plugins (jQuery 插件) colo ...
- 实战weblogic集群之应用部署
一.创建应用发布目录,上传应用包. 1.在10.70.52.11-14的/app/sinova目录下建立applications目录(名称可以自定义),作为我们应用的发布目录. $ mkdir /ap ...
- 【转】Android自定义Adapter的ListView的思路及代码
原文网址:http://www.jb51.net/article/37236.htm Android自定义Adapter的ListView的思路及代码,需要的朋友可以参考一下 在开发中,我们经常使 ...