写这个app之前是因为看了头条的一篇文章:http://www.managershare.com/post/155110,然后心想要不做一个这样的app,让手机计算就行了。也就没多想就去开始整了。

 
项目用到了三个开源包:
 
 
使用方法:
1.在Appliction的onCreate里初始化
/**
* 初始化imageLoader
*/
public void initImageLoader() {
File cacheDir = StorageUtils.getCacheDirectory(getApplicationContext());
ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(
getApplicationContext())
.memoryCache(new LruMemoryCache(5 * 1024 * 1024))
.memoryCacheSize(10 * 1024 * 1024)
.discCache(new UnlimitedDiscCache(cacheDir))
.discCacheFileNameGenerator(new HashCodeFileNameGenerator())
.build();
ImageLoader.getInstance().init(config);
} public DisplayImageOptions getOptions(int drawableId) {
return new DisplayImageOptions.Builder().showImageOnLoading(drawableId)
.showImageForEmptyUri(drawableId).showImageOnFail(drawableId)
.resetViewBeforeLoading(true).cacheInMemory(true)
.cacheOnDisc(true).imageScaleType(ImageScaleType.EXACTLY)
.bitmapConfig(Bitmap.Config.RGB_565).build();
}

  2.使用时调用:

ImageLoader.getInstance().displayImage(
avatarUrl,
holder.mImage,
MyApplication.getInstance().getOptions(
R.drawable.user_icon_default_main),
new SimpleImageLoadingListener() {
@Override
public void onLoadingComplete(String imageUri,
View view, Bitmap loadedImage) {
super.onLoadingComplete(imageUri, view, loadedImage);
}
});
 
 
使用方法:
// 设置PullToRefresh
mListView.setMode(Mode.BOTH);
mListView.setOnRefreshListener(new OnRefreshListener2<ListView>() {
// 下拉Pulling Down
@Override
public void onPullDownToRefresh(
PullToRefreshBase<ListView> refreshView) {
String label = DateUtils.formatDateTime(MainAct.this,
System.currentTimeMillis(), DateUtils.FORMAT_SHOW_TIME
| DateUtils.FORMAT_SHOW_DATE
| DateUtils.FORMAT_ABBREV_ALL);
refreshView.getLoadingLayoutProxy().setLastUpdatedLabel(label);
mListView.setMode(Mode.BOTH);
pullFromUser = true;
mRefreshType = RefreshType.REFRESH;
pageNum = 0;
lastItemTime = getCurrentTime();
//获取数据
fetchData();
} // 上拉Pulling Up
@Override
public void onPullUpToRefresh(
PullToRefreshBase<ListView> refreshView) {
// 上拉的时候添加选项
mRefreshType = RefreshType.LOAD_MORE;
//获取数据
fetchData();
} });
actualListView = mListView.getRefreshableView();
actualListView.setFastScrollEnabled(true);
mEntities = new ArrayList<RankEntity>();
mAdapter = new MainListAdapter(MainAct.this, mEntities);
actualListView.setAdapter(mAdapter);
if (mEntities.size() == 0) {
fetchData();
}
mListView.setState(State.RELEASE_TO_REFRESH, true);

  

 这个源码包有修改过,只使用了单选这个Fragment!内容比较多想看的下载代码吧
 
 
项目虽然很渣很没新意,完成是出于一个瞬间的念头,开发完成后自己测试都觉得无聊,40多个选择,点到手抽筋!然后又加上了一个自动翻页的开关!

网盘无积分下载:http://yunpan.cn/cAbWf2QVih6wV  提取码 9abb
 
QQ:471497524
微信:519659991
 
新开的交流群,欢迎广州的开发者加入: http://jq.qq.com/?_wv=1027&k=cgvXpA,另外群里有一个HR需要找一位1年工作经验以上,能够独立开发App的安卓哥,正在找工作的一定要加这个群阿
 
最后附截图:

最新文章

  1. 远程ssh登陆时报错:/bin/bash: Permission denied
  2. 纯css的防止图片撑破页面的代码图片会自动按比例缩小
  3. iOS Block详细介绍(block实现)
  4. hdu.1198.Farm Irrigation(dfs +放大建图)
  5. Memcached集群代理软件magent安装小结
  6. 如何在WordPress中使用七牛云存储
  7. __attribute__ ((section(&quot;.text&quot;)))的测试
  8. SVM原理(1)
  9. Spring MVC Controller 单元测试
  10. C语言信号学习笔记
  11. JavaScript(1)——变量、函数声明及作用域
  12. 泛型DAO
  13. 如何判断dt中所有行的状态并有选择的移除
  14. [Swift]LeetCode721. 账户合并 | Accounts Merge
  15. 【java爬虫】---爬虫+jsoup轻松爬博客
  16. Go基础系列:函数(2)——回调函数和闭包
  17. [20190312]视图v$datafile字段OFFLINE_CHANGE#, ONLINE_CHANGE#.txt
  18. C++(3):./Encryptor: undefined symbol:Z11startserviceLAKJDFLJALDKJFLLLLL
  19. 如何把本地代码提交到git(码云)、github代码管理项目上
  20. JQuery Table 合并单元格-解决Bug版本

热门文章

  1. 采用多线程方式,解决由于查询等待造成winfrom假死问题
  2. js - object的属性操作
  3. ionic常用命令记录
  4. jar2exe 配置jre
  5. SQL truncate 、delete与drop区别
  6. js动画(三)
  7. awk命令详解二
  8. 缩进(Python很将就格式)
  9. 3505: [Cqoi2014]数三角形
  10. Linux下mysql数据库的命令