时间:2021-05-21
安卓虽然已经成为了移动设备第一操作系统,且影响力也延伸到了汽车和tv端,不过对于谷歌来说,需要依靠Java来做安卓开发一直是一个心病,因为Oracle公司因为java和谷歌在安卓系统上的诉讼搞得心力憔悴。
现在好了,谷歌官方正式支持Kotlin(官方网站 https://kotlinlang.org/,居然没被墙)成为官方认可的安卓开发第一语言,而且从Android Studio 3.0开始,将直接集成Kotlin而无需安装任何的插件。这个语言是由JetBrains去年发明的,它受到欢迎,主要是因为它运行在Java虚拟机上,可以和java一起使用来构建应用程序。 这意味着开发人员可以使用现有的代码,轻松地构建新的功能或替代Java代码。 由于Kotlin依赖于Java,所以这两种语言都将继续得到支持。
谷歌将致力于推动Kotlin相关安卓开发工具的发展,使得使用Kotlin来开发安卓应用更加高效。当然生态系统不是一天就可以创建好的,Kotlin何时可以取代Java成为安卓开发第一语言还需要时日。
开干吧
假设你已经下载好了android studio 3.0
1.创建项目,必须要选中include Kotlin 不然就还是默认java开发
2.下一步, 下一步 然后就完成了(第一次会很长的时间, 因为那些库基本上都在国外,你懂的)
val fab = findViewById(R.id.fab) as FloatingActionButton这里的”findViewById”可以省略, 我们再添加一个, 在app/build.gradle里面
apply plugin: 'com.android.application'apply plugin: 'kotlin-android'apply plugin: 'kotlin-android-extensions'然后代码就可以写成
fab.setOnClickListener { view-> Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG).setAction("Action", null).show() }有没有惊喜? 其实呢, kotlin我最喜欢的还是它的扩展特性, 这样就可以省略了很多工具类. 比如我们给View添加一个扩展方法.
新建一个kotlin文件:ViewEx, 添加上扩展函数
测试一下:
override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) val toolbar = findViewById(R.id.toolbar) as Toolbar setSupportActionBar(toolbar) fab.setOnClickListener { view-> Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG).setAction("Action", null).show() view.log("测试扩展函数") println("扩展属性值:${view.type}") } }打印出结果:
是不是很方便? 不用单独去写什么工具类了.
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
Kotlin开发Android应用实例详解相关文章:关于Kotlin语言的基础介绍:我们简单的知道了Kotlin这门新语言的优势,也接触了一些常见的语法及其简单
前几年的GoogleI/O大会上,Google正式宣布,Kotlin将会成为Android开发的官方支持语言。除了Android外,Kotlin还可以完全作为服
详解KotlinReferenceBasicTypes,String,ArrayandImports基本数据类型Kotlin中支持的基本数据类型及它所占Bit宽
关于详解Android应用中DialogFragment的基本用法,大家可以参考下。1、概述DialogFragment在android3.0时被引入。是一种特
AndroidStudio从3.0版本新增了许多功能,当然首当其冲就是从3.0版本新增了对Kotlin开发语言的支持,除此之外还有其他一些新功能,例如:Andr