一些总结

Git 取消上传文件

  1. 放弃对文件的修改 git checkout

  2. 假定没有修改文件 git update-index –assume-unchanged sdk_version.properties

SQLite notice

index 从 1 开始

fresco多图加载,缩略图预览

1
2
3
4
5
6
7
8
9
10
ImageRequest request = ImageRequestBuilder
.newBuilderWithSource(Uri.fromFile(new File(fileName)))
.setLocalThumbnailPreviewsEnabled(true)
.setResizeOptions(new ResizeOptions(DensityUtil.dip2px(context,120), DensityUtil.dip2px(context,120)))
.build();
DraweeController controller = Fresco.newDraweeControllerBuilder()
.setImageRequest(request)
.setOldController(mSimpleDraweeView.getController())
.build();
mSimpleDraweeView.setController(controller);

重点在于缩放

1
setResizeOptions(new ResizeOptions(DensityUtil.dip2px(context,120), DensityUtil.dip2px(context,120)))

Clare进度总结-c1版

最近因为复习,没怎么做项目。就写一下最近自己做的一个项目的进度吧。

名字叫Clare,是因为我很喜欢claymore兔子啊(没关系这一段可以跳过)。。。这个名字是很久前就想好所谓的“下一个app一定要取这个名字”。

使用了bmob提供的后台服务,初步计划功能是做成一个即阅即焚型的app。因为我上一个自己玩的app功能是围绕朋友圈展开的,但是那时候使用的是简单的项目结构和Picasso。也并没有使用Material Design。我想在上一个app的基础上做出进步。所以开始了这个项目。

初始项目技术路线(包括但不限于):
1.应用MVP设计模式架构项目;
2.应用Material Design思想设计UI;
3.Butterknife,Fresco,retrofit等框架的相关应用。

主要目的就是实践一下一些MVP的设计模式,也为了自己愉悦。。

目前的进度,也就是从7月11正式开始做,到7月14,实现了之前那个项目的功能,也就是朋友圈的功能。

因为复习的关系,项目搁置了一段时间了。毕竟复习还是很紧张的。

下阶段工作:
1.设计并实现MD风格的个人信息页面;
2.修改Murmur的展示方式,全屏大图,界面越干净越好;
3.修改后台Nodejs云逻辑,实现即阅即焚的单次调用。

此外,我开了新坑,实践Rxjava和Retrofit的结合使用。使用API是BCPU小伙伴们挖掘的Bilibili API。如果可以的话,我会试着把这些内容放到Clare里。

今天简单介绍一下其中的MVP吧

Fresco属性总结

缩放类型—ScaleType

类型 描述
center 居中,无缩放
centerCrop 保持宽高比缩小或放大,使得两边都大于或等于显示边界。居中显示。
focusCrop 同centerCrop, 但居中点不是中点,而是指定的某个点
centerInside 使两边都在显示边界内,居中显示。如果图尺寸大于显示边界,则保持长宽比缩小图片。
fitCenter 保持宽高比,缩小或者放大,使得图片完全显示在显示边界内。居中显示
fitStart 同上。但不居中,和显示边界左上对齐
fitEnd 同fitCenter, 但不居中,和显示边界右下对齐
fitXY 不保存宽高比,填充满显示边界
none 如要使用tile mode显示, 需要设置为none

Fresco

Fresco是一个强大的图片加载框架。这篇文章主要介绍一下这个库的基本使用。

1 Android系统图片加载

Android系统基于linux。linux系统会给每个应用分配一个用户进程。故应用在使用时可以使用的内存大小是有限的。如果超出这个限制,就会引起内存泄漏(OOM。Out of memory)。

在android开发过程中,图片加载是个很容易引起OOM错误的过程。在之前的开发过程中,为了避免OOM,我曾经使用过ImageLoader,和Picasso。这些都很好地处理了图片加载这个令人头疼的问题。

Fresco是我从一个前辈那里了解到的一个更好的解决方案。很好的实现了图片加载并做了性能优化。其中的编程思想是我仍然在继续学习的。