BaseFramework 6.5.5.1版本更新报告

96
kongzue
2018.09.01 16:27* 字数 1275

6.5.5.1版本更新日志

v6.5.5.1:

  • 警告:因命名冲突,6.5.5版本起,跳转回调参数 OnResponseListener 改名为 OnJumpResponseListener;
  • 可以使用bigLog(...)打印更长的日志了;
  • dip2px和px2dip不再需要context参数;
  • 显示/关闭键盘的方法setIMMStatus(...)将被更名为showIME(...),目前新旧方法都可以使用;
  • 更新getNavbarHeight()方法,可以获取到更为准确的底栏高度;
  • 新增getRootHeight()方法,可以获取准确真正的屏幕高度(含底栏和状态栏);
  • 新增BaseActivity注解 @FullScreen(true)可以直接使Activity全屏;
  • 修正了 @NavigationBarBackgroundColor(a,r,g,b)的默认值;
  • jump支持了共享元素,只需要在原参数末尾增加共享元素view,例如jump(Class<?> cls, View transitionView);

一些需要注意的事项

BaseFramework 框架一直以来致力于打造一款方便易用、符合直觉的 Android 适配框架,在此目标的基础上,我会不断的对之前不好用的功能、方法进行修改,此次版本更新牵扯到的修改比较多,也会对之前的一些方法产生影响,因此我有必要发布一篇针对此版本的更新报告,用于详细解析此版本的更新内容。

① 6.5.5 版本起,跳转回调参数 OnResponseListener 改名为 OnJumpResponseListener

由于 BaseOkHttp 框架(https://github.com/kongzue/BaseOkHttp)采用了同名的回到方法用以返回网络请求的数据,此处出现命名冲突,因此从 6.5.5 版本起,BaseFramework 中的回调参数 OnResponseListener 改名为 OnJumpResponseListener,其他保持不变,您可以使用全局替换功能直接替换此监听器名即可;

② 可以使用bigLog(...)打印更长的日志了

Android 自带的 Log 方法对打印是护具长度是有限制的,这对于我们需要打印长篇日志并不友好,有时我们可能需要打印更大篇幅的日志数据,从 6.5.5 版本起,可以使用 bigLog(...) 方法打印长篇日志,效果如下:

BIGLOG.start=================================
这里是你的日志
BIGLOG.end=================================

当然了,bigLog 依然受限于 BaseActivity.DEBUGMODE 的开关,若此开关处于关闭状态(默认也是关闭的)则无法打印任何数据,这也是为了保证你可以在发布正式版本时一键关闭所有的日志打印。

③ dip2px和px2dip不再需要context参数

在此之前,位于 BaseActivity 和 BaseFragment 中提供的 dp 和 px 转换工具 dip2px 和 px2dip 是 static 静态的,且需要额外的参数 context,从 6.5.5 版本起,它们将不再是静态的了,且不再需要额外的 context 参数,这是为了更加有效率的进行开发而做出的修改。

④ 显示/关闭键盘的方法setIMMStatus(...)将被更名为showIME(...),目前新旧方法都可以使用

更为符合直觉的命名方式一直是我对此框架进行的优化方向,方法 setIMMStatus(...) 将被更名为 showIME(...) 也是基于此目的进行的修改,但我依然保留了旧方法供使用,这也是为了减轻升级到此版本的工作量;

⑤ 关于所有屏幕高度、宽度获取的方法

Android 平台适配的一大难度在于分辨率的适配,老的方法我们可能无法精确的获取到状态栏、底部导航栏的高度、以及屏幕的具体准确高度和安全高度,从 6.5.5 版本起,对旧的方法进行了修改,以及额外的提供了新的方法以获取这些值:

//获取屏幕安全高度:
getDisplayHeight();
//获取屏幕安全宽度:
getDisplayWidth();
//获取屏幕完整高度:
getRootHeight();
//获取状态栏高度:
getStatusBarHeight();
//获取底部导航栏高度:
getNavbarHeight();

⑥共享元素的支持

之前版本的 jump(...) 方法提供了基础的界面跳转功能,但在 Android 5 开始,Android 提供了共享元素动画,可以方便的完成上一个界面到下一个界面的过度,只需要将两个界面中需要共享元素的 View 设置好以下属性即可:

android:transitionName="共享元素名称"

但默认的写法有些麻烦,还需要判断 Android 版本,从 6.5.5 版本起,您可以直接使用 jump(...) 来进行共享元素跳转,方法很简单,就是在之前的 jump(...) 方法最后加上一个要共享的元素 View 即可。

结尾

本次更新对之前的一些方法做了变更,更新至此版本可能需要有一定的额外的工作量,建议仔细阅读此更新报告以了解为什么进行这些修改,也请相信,所有修改都是进过深思熟虑的,且我们的目的,永远是为了打造一款方便易用、符合直觉的 Android 适配框架。

额外的

BaseFramework 框架地址: https://github.com/kongzue/BaseFramework
欢迎 Fork & Star!

随手写的一点基础
Web note ad 2