如何创建一个Kotlin项目

作者: flemingchen | 来源:发表于2017-05-18 15:01 被阅读116次

    前言:Google I/O 2017正式将Kotlin语言作为Android开发最新的 First-class编程语言,而且Android Studio 3.0 已加入对其的支持。

    安装插件

    这点先暂时这么干着,升级到3.0后就不用了,至于这么安装Kotlin插件,自己Google吧,不是重点。

    配置Gradle

    项目下的build.gradle要添加:

    buildscript {
        ext.support_version = '25.3.1' //支持库版本
        ext.kotlin_version = '1.1.2-3'  //kotlin版本
        ext.anko_version = '0.8.2'  //anko库版本
    
        repositories {
            jcenter()
        }
        dependencies {
            classpath 'com.android.tools.build:gradle:2.3.0'
            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
        }
    }
    
    allprojects {
        repositories {
            jcenter()
        }
    }
    
    task clean(type: Delete) {
        delete rootProject.buildDir
    }
    

    app下的build.gradle要添加:

    apply plugin: 'com.android.application'
    apply plugin: 'kotlin-android'
    apply plugin: 'kotlin-android-extensions'
    
    android {
        compileSdkVersion 25
        buildToolsVersion "25.0.2"
        defaultConfig {
            applicationId "com.example.fleming.myapplication"
            minSdkVersion 15
            targetSdkVersion 25
            versionCode 1
            versionName "1.0"
            testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
        }
        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 "com.android.support:appcompat-v7:$support_version"
        compile 'com.android.support.constraint:constraint-layout:1.0.2'
        compile "com.android.support:design:$support_version"
        testCompile 'junit:junit:4.12'
    
        // kotlin
        compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
        compile "org.jetbrains.anko:anko-common:$anko_version"
    }
    
    buildscript {
        repositories {
            jcenter()
        }
        dependencies {
            classpath "org.jetbrains.kotlin:kotlin-android-extensions:$kotlin_version"
        }
    }
    

    完成后点击Sync Now同步一下。

    将Java文件转换成Kotlin文件

    class MainActivity : AppCompatActivity() {
    
        override fun onCreate(savedInstanceState: Bundle?) {
            super.onCreate(savedInstanceState)
            val toolbar = findViewById(R.id.toolbar) as Toolbar
            setSupportActionBar(toolbar)
    
            val fab = findViewById(R.id.fab) as FloatingActionButton
            fab.setOnClickListener { view ->
                Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG)
                        .setAction("Action", null).show()
            }
        }
    
        override fun onCreateOptionsMenu(menu: Menu): Boolean {
            // Inflate the menu; this adds items to the action bar if it is present.
            menuInflater.inflate(R.menu.menu_main, menu)
            return true
        }
    
        override fun onOptionsItemSelected(item: MenuItem): Boolean {
            // Handle action bar item clicks here. The action bar will
            // automatically handle clicks on the Home/Up button, so long
            // as you specify a parent activity in AndroidManifest.xml.
            val id = item.itemId
    
    
            if (id == R.id.action_settings) {
                return true
            }
    
            return super.onOptionsItemSelected(item)
        }
    }
    

    当然也可以单击右键选择New —> Kotlin Activity

    最后

    其实在github已经有很多开发者使用kotlin编写出了不错的项目,如何快速学习并掌握这门语言呢?点击这里 大家一起学吧!

    相关文章

      网友评论

        本文标题:如何创建一个Kotlin项目

        本文链接:https://www.haomeiwen.com/subject/cwysxxtx.html