Kotlin + Android KTX让开发更简单

写在前面

最近Google新推出了一套扩展插件 Android KTX,可以结合Kotlin写出更自然更简洁的代码,趁热来学习一下

Github地址
https:/github.com/android/android-ktx/

开始

首先进行依赖

implementation 'androidx.core:core-ktx:0.1'

官方案例对比

Kotlin创建一个Uri对象
 var s = "https://www.google.com"
 var uri = Uri.parse(s)

使用Android KTX + Kotlin之后

 var s = "https://www.google.com".toUri()
SharedPreferences

Koltin

sharedPreferences.edit().putBoolean(key, value).apply()

Kotlin + Android KTX

sharedPreferences.edit { 
    putBoolean(key, value) 
}
Canvas

Kotlin

val pathDiffer = Path(mPath1).apply {
   op(mPath2, Path.Op.DIFFERENCE)
}

val mPaint = Paint()

canvas.apply {
     val checkpoint = save()
     translate(0F, 100F)
     drawPath(pathDiffer, mPaint)
     restoreToCount(checkpoint)
}

Kotlin + Android KTX

val pathDiffer = mPath1 - mPath2

canvas.withTranslation(y = 100F) {
   drawPath(pathDiffer, mPaint)
}
在 onPreDraw 回调中执行其他任务

Kotlin

view.viewTreeObserver.addOnPreDrawListener(
       object : ViewTreeObserver.OnPreDrawListener {
           override fun onPreDraw(): Boolean {
               viewTreeObserver.removeOnPreDrawListener(this)
               actionToBeTriggered()
               return true
           }
       })

Kotlin + Android KTX

view.doOnPreDraw { actionToBeTriggered() }

简直流畅的不要不要的,感觉有兴趣可以去看看API文档:https://android.github.io/android-ktx/core-ktx/

结尾

只有一首歌来表达现在的心情了


song.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 176,259评论 25 709
  • Google在今年的IO大会上宣布,将Android开发的官方语言更换为Kotlin,作为跟着Google玩儿An...
    蓝灰_q阅读 77,119评论 31 489
  • afinalAfinal是一个android的ioc,orm框架 https://github.com/yangf...
    passiontim阅读 15,758评论 2 45
  • 1.Appium环境搭建参考官网appium.io给出的终端命令进行安装.> brew install node ...
    sands_yu阅读 9,331评论 1 9
  • 语言画面感,我可以理解为是开枝散叶说好听的么,这节课程的出现,瞬间感觉我上学时候语文没学好!呵呵哒了,词穷,从来梵...
    素10阅读 1,108评论 0 0

友情链接更多精彩内容