Kotlin的简要介绍 在开发之前,很多同学一定有很多疑问,Kotlin到底有啥好处,怎么和现有的项目共存呢?Java那么些特性Kotlin都有吗?嗯,让我们一一来看。 以下内容摘自:Kotlin的官方
Kotlin的简要介绍
在开发之前,很多同学一定有很多疑问,Kotlin到底有啥好处,怎么和现有的项目共存呢?Java那么些特性Kotlin都有吗?嗯,让我们一一来看。
以下内容摘自:Kotlin的官方网站:https://www.kotlincn.net/docs/reference/android-overview.html
Kotlin 非常适合开发 Android 应用程序,将现代语言的所有优势带入 Android 平台而不会引入任何新的限制:
- 兼容性:Kotlin 与 JDK 6 完全兼容,保障了 Kotlin 应用程序可以在较旧的 Android 设备上运行而无任何问题。Kotlin 工具在 Android Studio 中会完全支持,并且兼容 Android 构建系统。
- 性能:由于非常相似的字节码结构,Kotlin 应用程序的运行速度与 Java 类似。 随着 Kotlin 对内联函数的支持,使用 lambda 表达式的代码通常比用 Java 写的代码运行得更快。
- 互操作性:Kotlin 可与 Java 进行 100% 的互操作,允许在 Kotlin 应用程序中使用所有现有的 Android 库 。这包括注解处理,所以数据绑定和 Dagger 也是一样。
- 占用:Kotlin 具有非常紧凑的运行时库,可以通过使用 ProGuard 进一步减少。 在实际应用程序中,Kotlin 运行时 只增加几百个方法以及 .apk 文件不到 100K 大小。
- 编译时长:Kotlin 支持高效的增量编译,所以对于 清理构建会有额外的开销,增量构建通常与 Java 一样快或者更快。
- 学习曲线:对于 Java 开发人员,Kotlin 入门很容易。包含在 Kotlin 插件中的自动 Java 到 Kotlin 的转换器 有助于迈出第一步。Kotlin 心印 通过一系列互动练习提供了语言主要功能的指南。
使用Kotlin编写的半圆形的进度条,效果如下
方法如下
导入依赖
compile 'com.blackflagbin:semicircleprogressview:0.0.3'
在布局文件中
<!--angle 每条短线之间间隔角度--> <!--progress 进度--> <!--showProgressText 是否显示进度文字--> <!--strokeWidth 每条短线的宽度(粗细)--> <com.blackflagbin.semicircleprogressview.SemiCircleProgressView android:id="@+id/progress" android:layout_width="300dp" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:layout_marginTop="50dp" app:angle="3" app:progress="13" app:showProgressText="true" app:strokeWidth="3"/>
在代码中
//设置进度 progress.setProgress(3f) //获取进度 val progress = progress.getProgress() //更新进度 progress.updateProgress(75f)
如果想要自定义进度文字实现gif演示图中第二个进度条中的类似的文字效果,可以参考库中的MySemiCircleProgressView
//覆写此方法以实现自定义进度文字,height代表控件的高度 drawProgressText(canvas: Canvas,height:Float)
Github地址
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对自由互联的支持。