어떻게 Kotlin 을 사용 하여 안 드 로 이 드 개발 을 진행 합 니까?

8267 단어 KotlinAndroid
Kotlin 은 JVM 기반 프로 그래 밍 언어 로 안 드 로 이 드 개발 에서 자바 언어 를 대체 하 는 계승자 로 성장 하고 있다.자 바 는 세계 에서 가장 많이 사용 되 는 프로 그래 밍 언어 중 하나 로 다른 프로 그래 밍 언어 가 개발 자의 사용 을 더욱 편리 하 게 하기 위해 끊임없이 진화 할 때 자 바 는 예상대로 제때에 따라 가지 못 했다.   
Kotlin 은 JetBrains 가 만 든 JVM 기반 프로 그래 밍 언어 로 IntelliJ 는 JetBrains 의 걸작 이 고 Android 입 니 다. Studio 는 IntelliJ 의 수정 을 바탕 으로 한 것 이다.Kotlin 은 함수 식 프로 그래 밍 사상 을 많이 포함 하 는 대상 을 대상 으로 하 는 프로 그래 밍 언어 입 니 다.  
Kotlin 은 자바 가 부족 한 현대 언어의 특성 을 보완 하고 코드 를 크게 간소화 하여 개발 자 들 이 가능 한 한 적은 모델 코드 를 만 들 수 있 도록 태 어 났 습 니 다.안 드 로 이 드 의 swift 언어 라 고 하 는데 jetBrains 가 나 왔 습 니 다.이렇게 강력 한 IDE 지원 이 있 으 니 틀림 없습니다.
AndroidStudio 에 Kotlin 개발 플러그 인 설치:

클릭"Install JetBrains plugin"

kotlin 검색 을 입력 하고 아래 에 있 는 Kotlin Extension For Android 플러그 인 을 설치 하고 설치 후 AS 를 다시 시작 합 니 다.
KotlinActivity 만 들 기:
안 드 로 이 드 프로젝트 를 새로 만 드 는 것 은 이전 안 드 로 이 드 프로젝트 를 만 드 는 절차 와 유사 합 니 다.이 때 프로젝트 에서 도 kotlin 과 반 마 오 의 관계 가 없습니다.
프로젝트 생 성 완료 후 Activity 를 새로 만 들 때 만 KotlinActivity 를 선택 하 십시오.

별점 없 이 끝 나 는 게 편 해 보 여서 Lua 와 Python 에 익숙해 졌어 요.

자동 으로 만 든 인터페이스 레이아웃 파일 은 이전 과 다 를 바 없 이 xml 형식 입 니 다.또한 매 니 페스트 에 도 이 Activity 의 성명 이 자동 으로 추 가 됩 니 다.
gradle 설정:
IDE 알림 이 Kotlin 을 설정 해 야 할 때 설정 을 누 르 면 됩 니 다.procject 와 module 의 build.gradle 에 자동 으로 설 정 됩 니 다.수 동 설정 이 라면 procject 의 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 를 직접 사용 할 수 있 습 니 다.다음 과 같은 알림 이 있 으 면:

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?) {
super.onCreate(savedInstanceState)
 setContentView(R.layout.activity_main)
tvMessage.text = "hello kotlin!";
btnOpenActivity2.text = "OpenActivity2"
btnOpenActivity2.setOnClickListener({ startActivity(Intent(MainActivity@this, SecondActivity::class.java)) })
 }
}

이전 자바 코드 를 Kotlin 으로 변환:
앞 에 안 드 로 이 드 프로젝트 를 새로 만 들 때 MainActivity 가 KotlinActivity 가 아니 기 때문에 전환 이 필요 합 니 다.
메뉴 코드 선택->Java 파일 을 Kotlin 파일 로 변환
파일 내용 변경 을 제외 하고 파일 의 확장자 도 자바 에서 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 한 번,컴 파일 통과,실행 효과:

단 추 를 누 르 고 빈 페이지 를 열 면 캡 처 하지 않 습 니 다.
anko 로 창 만 들 기:
앞의 화면 은 모두 XML 을 사용 하여 만 들 었 습 니 다.anko 를 사용 하여 화면 을 만 드 는 것 을 보 여 줍 니 다.먼저 gradle 을 설정 하고 procject 의 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?) {
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([email protected]) }
 }
 }
}
}

이 주석 은 원래 setContentView 로 설 정 된 xml 레이아웃 을 설명 하고 코드 를 사용 하여 직접 만 들 었 습 니 다.사용 하기 가 간단 하고 직접적 이지 만 단점 도 뚜렷 합 니 다.인터페이스 디자인 단계 의 실시 간 미리 보기 효 과 를 얻 지 못 해서 보 이 는 대로 얻 기 어렵 습 니 다.xml 에서 계속 지원 할 수 있 기 때 문 입 니 다.효 과 를 보고 메 인 인터페이스의 단 추 를 누 르 면 두 번 째 페이지 를 엽 니 다.

Login 단 추 를 누 르 면 토스트 가 팝 업 됩 니 다.텍스트 는 이 단추 의 텍스트 입 니 다.
참고:
《Kotlin for android 개발 자 중국어 버 전 번역 
Getting started with Android and Kotlin
Unresolved reference: kotlinx
Android 개발 필수 지식:왜 Kotlin 이 해 볼 만하 다 고 말 합 니까?
Kotlin 안 드 로 이 드 프로젝트 에서 의 응용
anko
Kotlin 을 사용 하여 안 드 로 이 드 응용 프로그램 개발
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

좋은 웹페이지 즐겨찾기