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

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

  2.使用时调用:

  1. ImageLoader.getInstance().displayImage(
  2. avatarUrl,
  3. holder.mImage,
  4. MyApplication.getInstance().getOptions(
  5. R.drawable.user_icon_default_main),
  6. new SimpleImageLoadingListener() {
  7. @Override
  8. public void onLoadingComplete(String imageUri,
  9. View view, Bitmap loadedImage) {
  10. super.onLoadingComplete(imageUri, view, loadedImage);
  11. }
  12. });
 
 
使用方法:
  1. // 设置PullToRefresh
  2. mListView.setMode(Mode.BOTH);
  3. mListView.setOnRefreshListener(new OnRefreshListener2<ListView>() {
  4. // 下拉Pulling Down
  5. @Override
  6. public void onPullDownToRefresh(
  7. PullToRefreshBase<ListView> refreshView) {
  8. String label = DateUtils.formatDateTime(MainAct.this,
  9. System.currentTimeMillis(), DateUtils.FORMAT_SHOW_TIME
  10. | DateUtils.FORMAT_SHOW_DATE
  11. | DateUtils.FORMAT_ABBREV_ALL);
  12. refreshView.getLoadingLayoutProxy().setLastUpdatedLabel(label);
  13. mListView.setMode(Mode.BOTH);
  14. pullFromUser = true;
  15. mRefreshType = RefreshType.REFRESH;
  16. pageNum = 0;
  17. lastItemTime = getCurrentTime();
  18. //获取数据
  19. fetchData();
  20. }
  21.  
  22. // 上拉Pulling Up
  23. @Override
  24. public void onPullUpToRefresh(
  25. PullToRefreshBase<ListView> refreshView) {
  26. // 上拉的时候添加选项
  27. mRefreshType = RefreshType.LOAD_MORE;
  28. //获取数据
  29. fetchData();
  30. }
  31.  
  32. });
  33. actualListView = mListView.getRefreshableView();
  34. actualListView.setFastScrollEnabled(true);
  35. mEntities = new ArrayList<RankEntity>();
  36. mAdapter = new MainListAdapter(MainAct.this, mEntities);
  37. actualListView.setAdapter(mAdapter);
  38. if (mEntities.size() == 0) {
  39. fetchData();
  40. }
  41. 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的安卓哥,正在找工作的一定要加这个群阿
 
最后附截图:

【Android】 分享一个完整的项目,适合新手!的更多相关文章

  1. 一个完整的项目中,需要的基本gulp

    一个完整的项目需要使用gulp的多种功能,包括—— (1)加载各种需要的插件 var concat=require('gulp'); var clean=require(''gulp); 等等.需要的 ...

  2. android:分享 一个很强大的LOG开关---Log.isLoggable

    标签:android分享 一个很强大的log开 1.API亮点: 此API可以实现不更换APK,在出问题的手机上就直接能抓到有效log,能提升不少工作效率. 2.API介绍 最近在解决短信问题时,看到 ...

  3. asp.netmvc 三层搭建一个完整的项目

    接下来用 asp.net mvc 三层搭建一个完整的项目: 架构图: 使用的数据库: 一张公司的员工信息表,测试数据 解决方案项目设计: 1.新建一个空白解决方案名称为Company 2.在该解决方案 ...

  4. 如何基于Spring Boot搭建一个完整的项目

    前言 使用Spring Boot做后台项目开发也快半年了,由于之前有过基于Spring开发的项目经验,相比之下觉得Spring Boot就是天堂,开箱即用来形容是绝不为过的.在没有接触Spring B ...

  5. android 分享一个处理BaseAdapter,getView()多次加载的方法

    一:BaseAdapter介绍 BaseAdapter是listview,gridview等列表,使用的数据适配器,它的主要用途是将一组数据传到ListView.Spinner.Gallery及Gri ...

  6. 分享一个集成在项目中的REST APIs文档框架swagger

    1 为什么是使用swagger? 1-1 当后台开发人员开发好接口,是不是还要重新书写一份接口文档提给前端人员,当然对于程序员最不喜欢的就是书写文档(当然文档是必须的,有利于项目的维护) 1-2 当后 ...

  7. Android Studio 一个完整的APP实例(附源码和数据库)

    前言: 这是我独立做的第一个APP,是一个记账本APP. This is the first APP, I've ever done on my own. It's a accountbook APP ...

  8. Android 分享一个SharedPreferences的工具类,方便保存数据

    我们平常保存一些数据,都会用到SharedPreferences,他是保存在手机里面的,具体路径是data/data/你的包名/shared_prefs/保存的文件名.xml, SharedPrefe ...

  9. 分享一个完整的Mybatis分页解决方案

    Mybatis 的物理分页是应用中的一个难点,特别是配合检索和排序功能叠加时更是如此. 我在最近的项目中开发了这个通用分页器,过程中参考了站内不少好文章,阅读源码帮助更大minglisoft.cn/t ...

随机推荐

  1. perties类的操作

    http://www.cnblogs.com/bakari/p/3562244.html perties类的操作   知识学而不用,就等于没用,到真正用到的时候还得重新再学.最近在看几款开源模拟器的源 ...

  2. python之路: 基础篇

    )或>>> name = )    #按照占位符的顺序):]        #下标识从0开始的 wulaoer >>> print name[:]        # ...

  3. [转] SpringJdbc的几种不同的用法

    转自:http://vsp.iteye.com/blog/1182887 Spring对jdbc做了良好的封装,本人在学习时做了以下几种方式的尝试 首页先来创建一个dao接口 package com. ...

  4. struts2使用iterator标签显示嵌套Map - 云自无心水自闲 - BlogJava

    ">            <s:iterator value="dataMap.keySet()" id="class">     ...

  5. (译)Windsor入门教程---第五部分 添加日志功能

    介绍     现在我们已经有了基础的框架了,是时候添加内容了,那么我们首先应该考虑的就是在应用程序中添加日志功能.我们会使用Windsor来配置,在这一部分,你将学习Windsor之外的其他功能. L ...

  6. STM32驱动W25X64存储器

    W25X64 是华邦公司推出的大容量 SPI  FLASH 产品,W25X64 的容量为 64Mbit(8M),该系列还有 W25Q80/16/32 等.W25X16,W25X32,W25X64分别有 ...

  7. iOS开发UITableView基本使用方法总结

    本文为大家呈现了iOS开发中UITableView基本使用方法总结.首先,Controller需要实现两个delegate ,分别是UITableViewDelegate 和UITableViewDa ...

  8. jsp发布后应用根目录

    1.发布到tomcat后获取应用的根目录 ServletContext s1=this.getServletContext(); String temp=s1.getRealPath("/& ...

  9. chorme加减乘除浮点数处理

    在处理简单的1-0.7的时候发现chorme给的结果竟然是0.30000000000000004,瞬间蛋疼了,这数据能用?! 然后去百度找到了简单的两个数的加减乘除,然后修改了下,除了除法都可以多个数 ...

  10. NOIP前刷水行动

    2016.11.15 BZOJ1009:DP+矩阵乘法+KMP BZOJ1898:矩阵乘法 BZOJ4101:贪心,考虑我们往右边撞的时候,我们会向左边冲 ,于是枚举答案点利用一个指针计算即可! 20 ...