Android-共享元素动画效果

共享元素可以在Activity之间或者Fragment之间实现非常舒适的动画效果,如下图所示,特别是在跳转的界面之间拥有相同的界面元素,比如同一张图片但是大小不同,同一个View但是位置不同。需要注意的是最低api需要为21,即Android LOLLIPOP。

January 11, 2020 · 12 min · Me

Android-Q适配-存储方式

Android Q之后对系统存储方式进行了调整,简而言之就是禁止开发人员随意通过路径访问操作外部存储文件,内部存储没有影响。这样做的目的很明显,即往后原生Android的文件管理器将不会出现各种App生成的乱七八糟的文件,不同类型的文件都在其各自相应的位置。

October 26, 2019 · 16 min · Me

Android框架-RxJava

Android中很多地方都需要跨线程通信,这是由于Android主线程不允许进行复杂的网络请求或者其他非常耗时的操作,否则会导致ANR,主线程只能进行UI操作,比如修改某个控件的text、设置某个控件不可见等等,因此网络请求等操作需要在其他线程中完成,当数据在其他线程中获取完毕时,通过跨线程通信将数据传到主线程中,主线程就可以直接根据数据进行UI操作。常见的跨线程通信的方式有Handler、AsyncTask、EventBus以及RxJava等,前两个是Android自带,后两者是封装好的第三方库。

July 25, 2019 · 21 min · Me

Material组件-Snackbar

Snackbar是类似与Toast的一种信息提示控件,但是与Toast不同的是Snackbar是从界面底部弹出的且支持一个点击事件,默认情况下Snackbar内部有两个子控件分别是TextView和Button,两者水平排列,TextView用于显示信息,Button用于实现点击事件。

July 23, 2019 · 3 min · Me

Android框架-Gson

json是一种数据格式,类似与键值对的形式,常用于服务器与客户端之间数据传输,以键值对形式传输的数据在客户端进行解析时必然需要对不同的key寻找其对应的value,通常来说这种解析数据的过程非常繁琐,但是没有难度,所以Google推出了Gson这个工具,用于解析json数据并直接将其实例化。

July 20, 2019 · 19 min · Me

Android框架-Retrofit与OkHttp

Http,超文本传输协议,Https,更加安全的超文本传输协议,目前大量用于客户端与服务端之间的信息交流,属于应用层协议,下面有传输层TCP协议、网络层IP协议以及数据链路层为其提供保障。以登录功能为例,每一次输入账户密码后点击登录按钮就做了一次对服务器的Http请求(POST),我们收到的结果比如账号密码错误或者登录成功等信息就是服务器对Http请求的回复。Http与Https的区别在于后者采用了SSL(Secure Socket Layer安全套接层),简而言之就是对传输的数据进行了加密。具体细节可以在HTTPS Tutorials或者其他资料中找到。

July 20, 2019 · 40 min · Me

Android框架-Dagger2

Dagger2框架是一个依赖注入框架,它既可以用于Java Web项目也可以用于Android项目

July 2, 2019 · 25 min · Me

Material组件-Menu

Menu,不同于Button、TextView之类的控件,它不需要在布局文件中指定位置,它是用于提供给用户额外的操作选择,因此不必局限于某一个固定位置,它可以搭配任何控件。

June 24, 2019 · 21 min · Me