杭州Android培训
达内杭州Android培训中心

13732203138

热门课程

Android KTX: 助你更自然的编写Kotlin代码

  • 时间:2018-12-17 10:31
  • 发布:转载
  • 来源:网络

Android KTX在Android框架和支持库之上提供了一个很不错的API层,让你更加自然的编写你的kotlin代码。

现在Android KTX覆盖Android框架部分已经可以使用了,在我们的Github repo。我们邀请你去试一试,然后给我们你的反馈和贡献。Android KTX其余覆盖Android支持库的部分,将在即将到来发布的支持库可用。

让我们来看一些如何使用Android KTX的示例代码,去帮助你编写更自然和简洁的Kotlin代码。

使用Android KTX示例代码

String 转 Uri

让我们从这个简单的示例开始,正常情况下你将会调用Uri.parse(uriString)。Android KTX 添加了扩展功能到String类,允许你更自然的去转换String到 URIs。

Kotlin

val uri = Uri.parse(myUriString)

Kotlin with Android KTX

val uri = myUriString.toUri()

编辑Sharepreference


编辑Sharepreference是一个非常常见使用的情况,代码使用了Android KTX稍微短了些并且读写更自然。

Kotlin

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

Kotlin with Android KTX

sharedPreferences.edit {    putBoolean(key, value) }


翻译路径差异

下面的代码,我们通过100像素在两个路径之间翻译。

Kotlin

val pathDifference = Path(myPath1).apply {   op(myPath2, Path.Op.DIFFERENCE)}val myPaint = Paint()canvas.apply {   val checkpoint = save()   translate(0F, 100F)   drawPath(pathDifference, myPaint)   restoreToCount(checkpoint)}

Kotlin with Android KTX

val pathDifference = myPath1 - myPath2

canvas.withTranslation(y = 100F) {   drawPath(pathDifference, myPaint)}


动作在View onPreDraw

这个示例代码利用一个View的onPreDraw回调触发一个动作,没有Android KTX,这儿有相当多的代码需要你自己去写

Kotlin

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

Kotlin with Android KTX

view.doOnPreDraw { actionToBeTriggered() }


这儿有许多更多Android KTX能够简化你的代码,你能够在Github上阅读更完整的API参考文档。

入门

对于开始在你的Android kotlin项目中使用Android KTX, 添加如下到你的app模块的build. gradle文件。

repositories {    google()}dependencies {    // Android KTX for framework API    implementation 'androidx.core:core-ktx:0.1'    ...}


然后你将同步你的项目,扩展程序自动出现在IDE的自动完成列表中。选择扩展程序自动添加必要导入语句到你的文件中。


当心那些在预览期间可能会改变的API.如果你决定在你的项目中去使用它,你应该期望在我们的稳定版到达之前打破变化。

androidX: Hello world !

你或许建议Android KTX使用包名以androidx开头,这是一个新的包名前缀,我们将在未来的版本的Android支持库使用。我们希望版本在android.*与androidx.*之间。使API被绑定的平台更显而易见,对于静态库app开发者工作贯穿了Android的不同版本。

下一步是什么?

今天的预览版启动只是一个开始,过了接下来的几个月,我们将迭代API,正如我们纳入你们的反馈和贡献。当API已经稳定并且我们能够提交到API兼容性,我们计划发布Android KTX 作为Android支持库。

我们和你一起朝着去构建Android KTX,Kotlin-ing 快乐!

预约申请免费试听课

怕钱不够?就业挣钱后再付学费!    怕学不会?从入学起,达内定制课程!     担心就业?达内多家实践企业供你挑选!

上一篇:Android Studio如何混淆自己开发的SDK产品?
下一篇:Android组件化框架实践

Android KTX: 助你更自然的编写Kotlin代码

Android Studio如何混淆自己开发的SDK产品?

干货:Android锁机样本分析

平均薪资13k+,为什么IT行业有这么高的薪资?

选择城市和中心
贵州省

广西省

海南省