溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

利用Kotlin怎么編寫(xiě)一個(gè)Android項(xiàng)目

發(fā)布時(shí)間:2020-12-07 16:22:13 來(lái)源:億速云 閱讀:226 作者:Leah 欄目:移動(dòng)開(kāi)發(fā)

這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)?lái)有關(guān)利用Kotlin怎么編寫(xiě)一個(gè)Android項(xiàng)目,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

插件安裝

環(huán)境搭建當(dāng)然是第一步,也是最重要的一步,但是這個(gè)Kotlin的環(huán)境搭建卻很簡(jiǎn)單,只要你安裝插件就行,個(gè)人是Android開(kāi)發(fā),所以就直接用Android Studio為例:

File—>Setting—>Plugins—>搜索Kotlin

然后點(diǎn)擊安裝,最后重啟Android Studio就行,我這個(gè)截圖是安裝過(guò)的

利用Kotlin怎么編寫(xiě)一個(gè)Android項(xiàng)目

創(chuàng)建項(xiàng)目

Android項(xiàng)目的創(chuàng)建我就不多說(shuō)了,因?yàn)樗茿ndroid本身的不涉及到Kotlin語(yǔ)言的,所以與我們平時(shí)創(chuàng)建的規(guī)則一樣,不會(huì)的出門(mén)百度。

創(chuàng)建一個(gè)KotlinActivity

利用Kotlin怎么編寫(xiě)一個(gè)Android項(xiàng)目

我們?cè)趧?chuàng)建的時(shí)候我們會(huì)發(fā)現(xiàn),安裝插件之后就多了這兩個(gè):

Kotlin File/Class 就是對(duì)應(yīng)的Kotlin對(duì)象我們這次不用,就暫時(shí)不講。

Kotlin Activity 就是我們要?jiǎng)?chuàng)建的KotlinActivity,我們選擇它,編譯器還是會(huì)跟創(chuàng)建普通的Activity幫我們創(chuàng)建布局文件和在AndroidManifest.xml中注冊(cè)這個(gè)Activity。

Groud配置

個(gè)人在做第一個(gè)HelloWorld的時(shí)候就是卡在了這個(gè)地方,網(wǎng)上有些說(shuō)創(chuàng)建KotlinActivity的時(shí)候編譯器會(huì)幫助我們?cè)赽uild.gradle里面生成需要的配置,但是說(shuō)實(shí)話我當(dāng)時(shí)它并沒(méi)有這么幫我干,那么我們?cè)趺词謩?dòng)配置呢。

首先是項(xiàng)目最外面的build.gradle:

// Top-level build file where you can add configuration options common to all sub-projects/modules.
ext.kotlin_version = '1.1.2'
buildscript {
  repositories {
    jcenter()
  }
  dependencies {
    classpath 'com.android.tools.build:gradle:2.3.0'

    // 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
}

這個(gè)是我的完整的配置文件,其實(shí)大家只需要在根目錄加上最上面那句話

ext.kotlin_version = '1.1.2'

這里有一個(gè)問(wèn)題,我們到底要寫(xiě)什么版本號(hào)呢?我當(dāng)時(shí)就遇到了這個(gè)肯,在網(wǎng)上拷貝了一個(gè)版本好結(jié)果怎么都運(yùn)行不起來(lái),其實(shí)這個(gè)版本號(hào)需要與我們安裝的Kotlin插件的版本號(hào)一致,那么我們?cè)趺床榭醋约喊惭b的Kotlin版本號(hào)呢?

Tools—>Kotlin—>Config Kotlin Plugin Updates—>Check for updates now

利用Kotlin怎么編寫(xiě)一個(gè)Android項(xiàng)目

好了,接下來(lái)我們來(lái)配置一下需要使用Kotlin語(yǔ)言的module的build.gradle配置

buildscript {
  repositories {
    jcenter()
  }
  dependencies {
    classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    classpath "org.jetbrains.kotlin:kotlin-android-extensions:$kotlin_version"
  }
}
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'

android {
  compileSdkVersion 25
  buildToolsVersion "25.0.2"
  defaultConfig {
    applicationId "com.zxf.kotlin"
    minSdkVersion 15
    targetSdkVersion 25
    versionCode 1
    versionName "1.0"
  }
  buildTypes {
    release {
      minifyEnabled false
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
  }
//  sourceSets {
//    main.java.srcDirs += 'src/main/kotlin'
//  }
}

dependencies {
  compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
  compile 'com.android.support:appcompat-v7:25.1.1'
  compile 'com.android.support.constraint:constraint-layout:1.0.0-beta4'
}

這個(gè)是我的配置文件,很清晰,主要就是在根目錄最上層加上

buildscript {
 repositories {
   jcenter()
 }
 dependencies {
   classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
   classpath "org.jetbrains.kotlin:kotlin-android-extensions:$kotlin_version"
 }
}
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'

接下來(lái)就是在dependencies 中引用kotlin

compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"

好了配置的步驟到這就真的徹底結(jié)束了,接下來(lái),我們看一下代碼。

擼代碼啦

我們先來(lái)看一下剛剛創(chuàng)建的KotlinActivity的代碼

package com.zxf.kotlin

import android.os.Bundle
import android.support.v7.app.AppCompatActivity

class KotlinActivity : AppCompatActivity() {

  override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_kotlin)
  }
}

布局文件沒(méi)有任何變化,首先,我們定義兩個(gè)控件,一個(gè)TextView,一個(gè)Button并給它們?cè)O(shè)置上id

<&#63;xml version="1.0" encoding="utf-8"&#63;>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:orientation="vertical">
  <TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/helloWorld"/>

  <Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/open_next"/>
</LinearLayout>

接下來(lái),就是在Activity里面獲取這兩個(gè)控件了,讓我們來(lái)看一下代碼:

    helloWorld.text = "hello world"
    open_next.text = "Open Next Activity"
    open_next.setOnClickListener { startActivity(Intent(KotlinActivity@this,SecondActivity::class.java)) }

這三句話就完成了給TextView設(shè)置文字和給Button設(shè)置文字和添加點(diǎn)擊事件,到這是不是發(fā)現(xiàn),我擦真是超簡(jiǎn)單,煩人的findviewbyid()終于不見(jiàn)了,一些沒(méi)有必要的new 和;也不需要了,簡(jiǎn)直就是太干凈了。

上述就是小編為大家分享的利用Kotlin怎么編寫(xiě)一個(gè)Android項(xiàng)目了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI