91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

利用Kotlin語言怎么進行Android開發

發布時間:2020-12-05 15:34:48 來源:億速云 閱讀:199 作者:Leah 欄目:移動開發

這期內容當中小編將會給大家帶來有關利用Kotlin語言怎么進行Android開發,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

Kotlin是一門基于JVM的編程語言,它正成長為Android開發中用于替代Java語言的繼承者。Java是世界上使用最多的編程語言之一,當其他編程語言為更加便于開發者使用而不斷進化時,Java并沒有像預期那樣及時跟進。   

Kotlin是由JetBrains創建的基于JVM的編程語言,IntelliJ正是JetBrains的杰作,而Android Studio是基于IntelliJ修改而來的。Kotlin是一門包含很多函數式編程思想的面向對象編程語言。  

Kotlin生來就是為了彌補Java缺失的現代語言的特性,并極大的簡化了代碼,使得開發者可以編寫盡量少的樣板代碼。據說是Android下的swift語言,而且是有jetBrains出品,有這么強大的IDE支持,一定錯不了。

AndroidStudio安裝Kotlin開發插件:

利用Kotlin語言怎么進行Android開發

點擊“Install JetBrains plugin”

利用Kotlin語言怎么進行Android開發

輸入kotlin搜索,安裝下面那個Kotlin Extension For Android插件,安裝后重啟AS。

創建KotlinActivity:

新建Android工程,這一步和以前創建安卓工程的步驟類似,這個時候工程里面也沒有跟kotlin有半毛錢的關系。

只不過在工程創建完成后,再新建Activity的時候選擇KotlinActivity:

利用Kotlin語言怎么進行Android開發

不帶分號結束的看起來就是舒服,習慣了Lua和Python。

利用Kotlin語言怎么進行Android開發

自動創建的界面布局文件和之前的沒什么區別,依然是xml格式的。同時manifest里也會自動添加該Activity的聲明。

配置gradle:

如果IDE提示需要配置Kotlin的時候,就點擊配置就好了,會自動在project和module的build.gradle里配置好。如果是手動配置的話,請在project的build.gradle里配置:

buildscript {
 ext.kotlin_version = '1.0.2'
repositories {
 jcenter()
 }
 dependencies {
 classpath 'com.android.tools.build:gradle:2.1.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
}
}

在module的build.gradle里配置:

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'

android {
 compileSdkVersion 23
buildToolsVersion "23.0.2"

defaultConfig {
 applicationId "com.example.demo_yunbu"
minSdkVersion 15
targetSdkVersion 23
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 fileTree(dir: 'libs', include: ['*.jar'])
 compile 'com.android.support:appcompat-v7:23.1.1'
compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
}
repositories {
 mavenCentral()
}

最后IDE提示Sync Now,用用這些修改就好了。

最后我們在布局文件中添加一個TextView來演示控件的操作:

 <TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/tvMessage"/>

然后在Activity代碼里就可以直接使用變量tvMessage了,如果有如下提示:

利用Kotlin語言怎么進行Android開發

只需要按Alt+Enter導入布局文件的引用即可,自動導入:

import kotlinx.android.synthetic.main.activity_main.*

然后可以直接使用變量tvMessage進行操作了,非常方便,再也不用每個控件用findViewById查找一遍了。
以下是完整的代碼:

package com.example.hellokotlin

import android.content.Intent
import android.support.v7.app.AppCompatActivity
import android.os.Bundle
import kotlinx.android.synthetic.main.activity_main.*

class MainActivity : AppCompatActivity() {

override fun onCreate(savedInstanceState: Bundle&#63;) {
super.onCreate(savedInstanceState)
 setContentView(R.layout.activity_main)
tvMessage.text = "hello kotlin!";
btnOpenActivity2.text = "OpenActivity2"
btnOpenActivity2.setOnClickListener({ startActivity(Intent(MainActivity@this, SecondActivity::class.java)) })
 }
}

把之前的java代碼轉換為Kotlin:

前面新建android工程的時候因為MainActivity并不是KotlinActivity,因此需要轉換一下,
選擇菜單Code->Convert Java File to Kotlin File
除了文件內容改變之外,文件的擴展名也從.java變為了.kt。

編譯,出現錯誤:
Error:(6, 8) Unresolved reference: kotlinx
Error:(13, 9) Unresolved reference: tvMessage
Error:Execution failed for task ':app:compileDebugKotlin'.
> Compilation error. See log for more details

提示缺少kotlin,需要手動配置一下,在module的build.gradle里添加:

buildscript {
 repositories {
 jcenter()
 }
 dependencies {
 classpath "org.jetbrains.kotlin:kotlin-android-extensions:$kotlin_version"
}
}

修改完成后Sync Now一次,編譯通過,運行效果:

利用Kotlin語言怎么進行Android開發

點擊按鈕后打開一個空白的頁面,這里就不截圖了。

使用anko創建界面:

前面的界面全部繼續使用了XML來創建的,這里演示下使用anko創建界面。首先配置gradle,在project的gradle里buildscript添加:

ext.anko_version = '0.8.2'

再在module的gradle里dependencies添加:

// Anko
compile "org.jetbrains.anko:anko-common:$anko_version"
compile 'org.jetbrains.anko:anko-sdk15:0.8.2' // sdk19, sdk21, sdk23 are also available
compile 'org.jetbrains.anko:anko-support-v4:0.8.2' // In case you need support-v4 bindings
compile 'org.jetbrains.anko:anko-appcompat-v7:0.8.2' // For appcompat-v7 bindings

最后Sync Now,成功后編輯SecondActivity的代碼:

package com.example.hellokotlin

import android.support.v7.app.AppCompatActivity
import android.os.Bundle
import org.jetbrains.anko.*

class SecondActivity : AppCompatActivity() {

override fun onCreate(savedInstanceState: Bundle&#63;) {
super.onCreate(savedInstanceState)
// setContentView(R.layout.activity_second)

verticalLayout {
padding = dip(30)
editText {
hint = "Name"
textSize = 24f
}
editText {
hint = "Password"
textSize = 24f
}
button("Login") {
textSize = 26f
onClick { toast(button@this.text) }
 }
 }
}
}

這里注釋掉了原來由setContentView來設置的xml布局,而使用了代碼直接創建,使用起來簡單直接了,但是缺點也很明顯,不能做到界面設計階段的實時預覽效果,很難做到所見即所得,好在xml還能繼續支持。運行看下效果,點擊主界面的按鈕打開第二個頁面:

利用Kotlin語言怎么進行Android開發

上述就是小編為大家分享的利用Kotlin語言怎么進行Android開發了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

丹东市| 延安市| 永靖县| 黄骅市| 临城县| 嘉义县| 邵东县| 陵水| 德安县| 彭阳县| 建平县| 郴州市| 通海县| 厦门市| 昌乐县| 盐边县| 称多县| 临湘市| 堆龙德庆县| 乌拉特前旗| 黄浦区| 高清| 湘阴县| 福建省| 武汉市| 元阳县| 长沙县| 卢氏县| 阳原县| 化州市| 华蓥市| 巢湖市| 甘泉县| 嘉兴市| 文昌市| 临猗县| 江孜县| 深州市| 安远县| 怀化市| 伽师县|