Kotlin初探
Kotlin语言
在上周末召开的谷歌IO大会上,谷歌宣布:将Kotlin语言作为安卓开发的官方编程语言。
1.pngKotlin由JetBrains公司开发一个基于 JVM 的新的编程语言,它的最大特点之一就是与Java 100%互通,并具备诸多Java尚不支持的新特性。在这里就不在多说,要想了解更多戳下面链接:https://www.kotlincn.net/
Kotlin语言会不会取代Java呢
将Kotlin语言作为安卓开发的官方编程语言这个消息宣布后,好多人认为Kotlin将会取代Java在安卓编程上的应用。对于这个说法我是不太赞同的,Kotlin从来就没有打算取代java,而且Kotlin是基于JVM的。Kotlin在安卓上的推出,只能说是给开发者提供了更加适合安卓的开发语言,因为Kotlin比起Java更加简介、安全。对于要不要入手Kotlin的问题,其实我觉得个人开心就好,不过既然谷歌已经决定Kotlin已经成为安卓的开发语言,无论如何都是要学学的,至于最后要用什么语言开发完全看个人爱好。
Kotlin for Android
Kotlin插件的安装
要使用Kotlin编写安卓程序只需要在Android Studio里面安装Kotlin插件即可。
第一种方法:如果你是稳定版的AS
依次打开:Android Studio > Preferences > Plugins,然后选择『Browse repositories』,在搜索框中搜索Kotlin。
选择『Kotlin』点击安装,安装完成之后,重启Android Studio。
Kotlin插件安装成功后,执行new操作,会发现弹窗多出了两个Kotlin相关选项:
1)“KotlinFile/Class”:一般Kotlin类
2)“Kotlin Activity”:Activity类
第一次创建Kotlin类的时候IDE会提示配置Kotlin
2.png 3.png配置完成后,会在build.gradle中生成下面代码
buildscript {
ext.kotlin_version = '1.0.4'
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.2.2'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
android {
...
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
...
compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
}
配置完成后
Kotlin有一个很实用的操作,就是将Java源代码转化为Kotlin代码:
执行code–> Convert Java File to Kotlin File
会把java代码转化成Kotlin代码。
这是转换后Activity的代码
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
}
}
第二种方法:官方下载AS 3.0尝鲜版,AS 3.0默认配置了Kotlin插件
网址:https://developer.android.com/studio/preview/index.html?utm_source=android-studio
从这个网站可以下载AS 3.0 尝鲜版,尝鲜版AS可以与你以前安装的稳定版AS共同运行,下载的压缩包解压就能直接使用。
在这之前你要保证你已经翻墙了,如果你没有翻墙可以找我要压缩包。
安装之后好多人都遇到这个错误,这是因为Kotlin的版本错误导致的
4.png把build.gradle里面的ext.kotlin_version = '1.1.2-3'改为ext.kotlin_version = '1.1.2-4'同步一下就行了
新建Kotlin安卓程序
如果你不是用的3.0,那么你就直接把你的java程序利用代码转换转换为Kotlin就行了。
只介绍一下AS 3.0的使用方法
新建过程跟以前是一样一样的,并没有太大差别,只有这个步骤,勾选上Kotlin支持
6.png新建之后的项目默认是有的就是Kotlin
7.png具体的Kotlin使用方法戳官方链接:https://www.kotlincn.net/docs/reference/android-overview.html
Kotlin有一个很实用的功能
8.png 9.pngKotlin可以省略findViewById的方式绑定控件,可以直接用控件的id来操作控件。
要使用这个功能,首先在app:build.gradle里面添加 apply plugin: 'kotlin-android-extensions'
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
android {
...
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile "org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version"
compile 'com.android.support:appcompat-v7:25.3.0'
testCompile 'junit:junit:4.12'
compile 'com.android.support.constraint:constraint-layout:1.0.0-beta4'
}
然后在你的Activity添加
import kotlinx.android.synthetic.main.你绑定的Layout.*
然后你就可以在Activity直接使用id来操作控件了