自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 收藏
  • 关注

原创 超简单Demo帮你快速理解Android新布局ConstraintLayout(约束布局)

写在前面ConstraintLayout(约束布局)是Google推出的新的布局组件,它出现的目的一是为了减少布局中ViewGroup的层级嵌套,二是为了适应更灵活的布局需求,它有点类似于RelativeLayout但是又比RelativeLayout强大很多,比如RelativeLayout中你可以让一个TextView在中横向居中,但是你很难让它处于横向30%的位置。如果在Relativ...

2019-03-13 20:10:00 19459 6

原创 Android中使用Kotlin协程(Coroutines)和Retrofit进行网络请求(三)之异常处理与封装

写在前面前面文章介绍了一些kotlin协程和retorfit结合进行网络请求的基础,但是如果在前面的demo执行的过程中,我们断开手机网络,会发生什么?没错,APP会因为IO异常而崩溃!为什么呢,这是因为retrofit在执行excute()方法时会throws IOException,而enqueue()方法则不会,因为它会把IOException处理放在callback的onFailur...

2019-02-18 23:04:16 7347 1

原创 Android中使用Kotlin协程(Coroutines)和Retrofit进行网络请求(二)之文件下载

写在前面下载功能是非常常用的功能,今天我们要通过kotlin协程和retrofit来是实现文件下载的功能.retorfit本身可以将请求结果以InputStream的形式返回,拿到InputStream,我们再将数据写入文件的outputStream,就可以实现文件的下载了.在java时我们也是这么做的.但问题是,我们在IO操作时都是在子线程操作,而下载过程中我还需要在UI显示下载状态,所以...

2019-02-15 14:08:49 5053 2

原创 Android中使用Kotlin协程(Coroutines)和Retrofit进行网络请求(一)

写在前面在Android开发中的网络请求是一个十分重要的功能,它包含请求配置,发送数据,解析数据,状态展示,线程调度切换等等,在过去java开发中,我们通常使用retrofit和rxjava来简化网络请求的操作.今天我们来看看用Kotlin协程和retrofit来进行网络请求操作,比起rxjava,kotlin协程的优势是更容易理解和阅读,异步请求的写法和执行更类似于同步代码.我们先通过一个...

2019-02-06 11:20:37 10351 5

原创 Kotlin语言中协程(Coroutines)的使用

写在前面什么是协程(coroutines)协程是一种类似于轻量级,更高效的线程(实际上它不是线程).为什么说它轻量级且高效呢,因为它实际上还是在当前线程中操作,但是它执行任务时又不会阻塞当前线程,所以它没有切换线程带来的额外资源消耗,实际开发中你你能开启的线程数量是有限的,并且线程是由操作系统控制的.但协程只要你的CPU和内存资源足够,你完全可以开启100000个协程,并且每个协程都由你自...

2019-01-25 22:58:14 3671 1

原创 使用LiveData和ViewModel为Android项目搭建MVVM架构(Kotlin语言版)(入门教程)

写在前面现在MVVM架构大行其道,逐渐取代MVP架构成为Android开发的主流架构,并且google官方为了方便实现MVVM架构推出了Architecture系列的库,现已纳入到jetpack中,并且推出了KTX版本的,这样用Kotlin语言也可以更方便的使用Architecture了。但网上的教程大部分是JAVA语言版本的,而且很多就是按照官方文档翻译一下,并没有讲的很清楚。Kotli...

2019-01-05 18:29:48 5300 3

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除