为了账号安全,请及时绑定邮箱和手机立即绑定
  • 这个文件过滤方法没有处理大写文件名,需要修复一下,还有在测试的是,文件可能大小未0K,这样的图片也可以过滤掉,所以我是这么处理的 //这个文件夹下面可能有其它文件类型,所以要过滤一下 if (filename.toLowerCase().endsWith("jpg") || filename.toLowerCase().endsWith("png") || filename.toLowerCase().endsWith("jpeg")) { File tempImageFile = new File(dir,filename); //这里过滤因为下载出错的图片文件,一般大小是0K if (tempImageFile.exists() && tempImageFile.isFile() && tempImageFile.length() > 0) { tempImageFile = null; return true; }else{ tempImageFile = null; return false; } } return false;
    查看全部
    3 采集 收起 来源:扫描图片

    2018-03-22

  • 记得加android.permission.READ_EXTERNAL_STORAGE 这个权限
    查看全部
    2 采集 收起 来源:适配器

    2015-09-06

  • 区域显示变亮
    查看全部
  • 图片加载的基本要求
    查看全部
  • 利用信号量控制任务队列 1.根据目前的逻辑,拿到一个task就会加入到taskQueue中,然后立即会sendMessage()给mPoolThreadHandler,它会将task加入到自己的任务队列中执行。(如图) 这样做的结果是taskQzone中永远只有一个任务,不能体现任务队列的概念。 2.修改——使用信号量 (1)任务队列mTaskQueue和线程池mThreadPool一定要分清楚 (2)当获得一个Task之后,会调用addTasks(Runnable)将其加入到任务队列mTaskQueue中,注意此时不会执行 它会立即sendMessage给mPoolThreadHandler,线程池将其加入到自己的任务队列中(注意这时后台线程池的),然后执行 mThreadPool.execute(getTask()); (3)注意,执行过程是个耗时操作,执行过程中,当前线程会获取信号量 mSemaphoreThreadPool.acquire(); (4)假设当前线程池中指定为3个线程数,那么就会有另外两个也会这么执行 如果此时又有一个也要执行,但是信号量已经没了,就会阻塞。 (5)每个task执行完之后会释放信号量 mSemaphoreThreadPool.release(); 这样才能保证第四个task继续执行 3.不知道这么理解是不是对的.....真TM faint!
    查看全部
  • 性能优化
    查看全部
  • 希望能把图片显示也讲解下,拖动、手势放大和缩小。
    查看全部
    1 采集 收起 来源:项目总结

    2015-09-07

  • 后台轮训线程
    查看全部
  • 如何实现目标
    查看全部
  • 仿微信图片加载器 目标 1.尽可能避免内存溢出。 2. 用户操作UI控件必须充分流畅 3. 用户预期显示的图片必须尽可能的快(图片加载策略的选择 FIFO LIFO)
    查看全部
  • 关于图片加载和缓存
    查看全部
    0 采集 收起 来源:单例模式

    2016-05-04

  • 后台轮询线程的实现
    查看全部
  • 加载图片的过程
    查看全部
  • 图片加载的三个目标
    查看全部
  • LinkedList: 一:LinkedList可以从头部和尾部取数据。 二:LinkedList内部采用的是链表,不需要连续的内存。
    查看全部
首页上一页1234567下一页尾页

举报

0/150
提交
取消
课程须知
1.掌握Java基础 2.熟练掌握Android常用技术
老师告诉你能学到什么?
1.单例模式在项目中的实践 2.图片的缓存与压缩 3.线程轮询与并行 4.反射机制在Android中的使用 5.Handler-线程间通信

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!