Start With Kotlin On Android

来源:互联网 发布:杭州淘宝拍摄场地出租 编辑:程序博客网 时间:2024/06/15 15:47

Android Studio 3.0 内置支持 Kotlin, 请安装3.0以上的 Android Studio。

创建 Kotlin 项目

在新建项目向导选择 Include Kotlin support,如下图所示:

Android Studio 3.0 Canary 1 默认会出错:
‘com.android.build.gradle.internal.variant.BaseVariantData.getOutputs()Ljava/util/List’
解决办法: ext.kotlin_version = ‘1.1.2-3’ 改成 ext.kotlin_version = ‘1.1.2-4’

看看gradle的配置, 增加了哪些配置
* 项目的 build.gradle

buildscript {    ext.kotlin_version = '1.1.2-4'    repositories {        maven { url 'https://maven.google.com' }        jcenter()    }dependencies {    classpath 'com.android.tools.build:gradle:3.0.0-alpha1'    classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"    // NOTE: Do not place your application dependencies here; they belong    // in the individual module build.gradle files    }}

增加了classpath “org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version”

  • app 的 build.gradle
apply plugin: 'com.android.application'apply plugin: 'kotlin-android'android {    ......}dependencies {    ......    compile "org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version"}

增加 kotlin-android 插件 和 kotlin-stdlib-jre7 依赖库

kotlin代码文件后缀名.kt, Android Studio 默认保存到 src/main/java/, 如果要和java代码区分,一般可放到src/main/kotlin/, build.gradle 增加配置, 将文件夹配置到sourceSets,如下:

android {    sourceSets {    main.java.srcDirs += 'src/main/kotlin'}

Java代码转换为Kotlin代码

如果有现成的Java代码,Android Studio 3.0 提供了转换工具,打开Java文件,选择 File > Convert Java File to Kotlin File,就会转成Kotlin代码。

也可以新建一个Kotlin文件,复制粘贴Java代码,Studio就会弹出对话框提示是否转为Kotlin代码。

Kotlin编写Android代码

Kotlin兼容Java,所以和Java编写Android程序一样,可以直接调用Android APi,例如:

class MainActivity : AppCompatActivity() {    override fun onCreate(savedInstanceState: Bundle?) {        super.onCreate(savedInstanceState)        setContentView(R.layout.activity_main)        mTextMessage = findViewById(R.id.message) as TextView        val navigation = findViewById(R.id.navigation) as BottomNavigationView        navigation.setOnNavigationItemSelectedListener(mOnNavigationItemSelectedListener)    }}

参考:Get Started with Kotlin on Android

原创粉丝点击