我都不知道这是个啥,我为什么要学它。
因为闲的。。。
别人会,我就看看。
文档地址https://developer.android.google.cn/kotlin,可以直接阅读中文的。我硬是用我好几年不用的扣脚的英语水品读了两篇,别问我为啥不用浏览器自带的翻译功能,因为我觉得这样读英文文档显得高大上。
看完的第一感觉,就是精简代码量,然后和Android Studio开发工具适配的好,可以Java代码和kotlin之间转换。
配置
as中使用,Ctrl+Alt+S——>plugins 搜索kotlin,安装重启
app/build.gradle 在 applyplugin:'com.android.application'下面添加
applyplugin:'kotlin-android'
applyplugin:'kotlin-android-extensions'
在Project dendepncies{
classpath"org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
} 这里的版本号就是刚才plugins中有的那个版本号
使用
啥也不懂,啥也敢干,先把BaseActivity转成kotlin
右键需要转换的文件,最下边 convert java file to kotlin file。快捷键Ctrl+Alt+Shift+K,操作不可逆,转换不回去,或者是我还没看到,然后撤销不可用,只能回滚版本。
转换会提示你一大堆英文,我大致理解为:有些代码需要你手动矫正,点击确定过去,有地方爆红
变量必须初始化或者抽象?
alt+Enter,提示,选择第一个add lateinit, 晚点初始化?
很不幸就这一个问题,转换完毕。
创建kotlin文件,需要创建文件的地方右键create,activity——>empty activity——>Source laungues 选择kotlin。为啥这样创建,习惯了,这样创建activty不用手动在manifest中手动添加activity,也不用手动创建xml文件。
实现baseActivity中的抽象方法
override fun initRequest() {
TODO("not implemented")//To change body of created functions use File | Settings | File Templates.
}
凭啥给我多一行todo,根据他的提示来,改变方法体默认实现,Ctrl+Alt+S
接下来,模拟登陆操作,xml就用登陆的
alt+Insert 选择使用黄油刀注解,我擦,咋没有?百度一拨,因为他不需要。。。
你可以直接使用xml中的id
我自作聪明的以为自己建个分支使用kotlin就行了
谁知来个bug,我切分支,baseActivity还是kotlin。。。
我去写,哦不,改bug了
未完待续。