ActivityResult 新时代跳转 Activity 获取返回值,我们怎么做?
AndroidX Activity 1.2.0-alpha02 和 Fragment 1.3.0-alpha02 是新旧时代的划分线。
调用方假设为 IntentsActivity,被调用方假设为 IntentResultActivity。
旧石器时代:
调用方:
调用 startActivityForResult 传入请求码,传输数据(可选)。
覆写 onActivityResult 方法,根据请求码和结果码获取返回结果信息。
123
阅读全文
哈喽,Android 小伙伴们~
这篇文章将提到 Fragment 中的两种 lifecycleowners。因为作为一个 Android 开发者,我们能够简单地使用 Fragment 作为 lifecycle owner,但某些情境下这可能会使你烦恼。
让我们先来看一下 Fragment 的生命周期:
从图中我们可以看到 onCreate 和 onDestroy 只调用了一次。这些是 Fragment 的主要的生命周期方法。 onCreateView 和 onDestroyView 根据 Fragment 的状态来被调用,因为它们是 Fragment 中 View 的主要生命周期方法。
因此,如果我们在 onCreate 中绑定 LiveData ,仅仅注册一次似乎是很合适很健康的。
1...
阅读全文
findBiewByIdfindBiewById 是 Android 开发中在布局中查找 View 元素的 Api。
findBiewById 基本使用12345678
阅读全文
FileProvider重复
自定义FileProvider继承FileProvider。
12public class AppleFileProvider extends FileProvider {}
AndroidManifest.xml中application节点下添加provider节点。
Provider1
阅读全文
基于9.0(29)简析Bitmap类。
我们只关注Bitmap类暴露出来的(即访问权限为public)东西。
枚举类Config
枚举类CompressFormat
若干 createBitmap 静态方法
其他方法
枚举类Config可能的 bitmap 配置。bitmap 配置描述像素的存储方式。这会影响质量(颜色深度)以及显示透明/半透明颜色的能力。
Config
每个像素占用字节数
表示颜色种数
说明
ALPHA_8
1个字节,A分量占8位,不存储颜色信息
0
单透明通道
RGB_565
两个字节,R分量占5位,G分量占6位,B分量占5位
2^16(65536)
阅读全文
为什么要压缩减少内存占用内存占用大小 = Bitmap大小 = 总像素点数 x 一个像素点占用的字节数
BitmapAndroid中图片在内存中的表达形式是Bitmap,即位图。
总像素点数总像素点数由什么决定呢?
总像素点数 = 图片源长度 x 缩放比例 x 图片源宽度 x 缩放比例
缩放比例可以大致表示为:(为什么说大致呢?因为不是绝对的,实际还有其他因素可以影响实际缩放比例,如inScreenDensity)缩放比例 = 1/inSam...
阅读全文
基于9.0(29)简析BitmapFactory类。
我们只关注BitmapFactor类暴露出来的(即访问权限为public)东西。
静态内部类Options
若干decode方法
静态内部类OptionsOptions,顾名思义,是BitmapFactory用于decode方法的选项参数。让我们看看有哪些:
Bitmap inBitmap如果使用此参数,decode方法会在加载内容时尝试重用此 bitmap ,如果编码操作不能使用此 bitmap (有限制条件),则会抛出 java.lang.IllegalArgumentException 异常。当前的重用实现方式要求 bitmap 必须是可变的,并且即使一个资源在decode后通常会得到不可变的 bitmap,在重用成功后所...
阅读全文
我们在日常打aar包和jar包,并上传到远端中央仓库时,需要引入大段gradle代码,较为繁琐。我这里整理了常用的上传到中央仓库的gradle代码,提供了较为方便的使用方式。上传代码模板GitHub目前只有上传到bintray也就是jcenter的整理,后期有需要其他远端中央仓库的会继续跟进。
模板整理GitHub
阅读全文
官方文档
免费Travis-CI(针对开源项目):https://travis-ci.org
收费Travis-CI(针对私有和商业项目):https://travis-ci.com
使用步骤
登录 Travis CI 并对指定的项目启用。
配置 .travis.yml ,参考官方文档。
push(或其他方式)触发Travis-CI。
实现工作流
构建。开...
阅读全文
Android中动画划分为两大类 视图动画(View Animation)和 属性动画(Property Animation)。其中 属性动画(Property Animation)需要在Android3.0之后(API >= 11)使用。视图动画(View Animation)又包括了 帧动画(Frame Animation) 和 补间动画(Tweened Animation)。
视图动画(View Animation)帧动画(Frame Animation)帧动画(Frame Animation) 有时也叫 Drawable动画,这种动画的实质其实是Drawable。像播放幻灯片一样,利用视觉残留产生动画效果。
核心类:AnimationDrawable
阅读全文