使用Kotlin开发Android应用
2024-08-26 17:24:07
1、Kotlin介绍
[Kotlin](https://kotlinlang.org/)
Kotlin是一门基于JVM的编程语言,它正成长为Android开发中用于替代Java语言的继承者。Java是世界上使用最多的编程语言之中的一个,当其它编程语言为更加便于开发人员使用而不断进化时,Java并没有像预期那样及时跟进。
Java缺失的非常多特性在最新的修订版中逐渐覆盖到了,但Android开发人员临时还没能够使用它们。这就使得相似Kotlin这种语言有了用武之地了:在旧的开发环境中使用现代语言的特性。
Kotlin是什么?
Kotlin是由JetBrains创建的基于JVM的编程语言,IntelliJ正是JetBrains的杰作,而Android Studio是基于IntelliJ改动而来的。Kotlin是一门包括非常多函数式编程思想的面向对象编程语言。
Kotlin生来就是为了弥补Java缺失的现代语言的特性,并极大的简化了代码,使得开发人员能够编写尽量少的样板代码。
2、配置工程
新建一个Project “MyKotlin”
在项目的build.gradle上加入kotlin版本
// Top-level build file where you can add configuration options common to all sub-projects/modules.
ext.kotlin_version = "1.0.0-rc-1036"
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.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
}
在module中的build.gradle加入kotlin的依赖
buildscript {
repositories {
jcenter()
}
dependencies {
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
再加入对android的支持
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
再加入java的编译路径。在main下创建kotlin文件夹 并在gradle文件写上
完整的build.gradle例如以下
buildscript {
repositories {
jcenter()
}
dependencies {
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
android {
compileSdkVersion 23
buildToolsVersion "23.0.1"
defaultConfig {
applicationId "com.example.mykotlin"
minSdkVersion 14
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'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.1.1'
compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
}
代码如图所看到的
3、代码转换
能够选择MainActivity 然后选择code–>>Convert Java File to Kotlin File …
然后将生成的文件kt 剪切到kotlin文件夹下。
kt 代码例如以下
package com.example.mykotlin
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)
tv.text = "Hello MyKotlin"
tv.textSize = 20.0f
}
}
终于执行如图所看到的:
4、样例下载
最新文章
- IIS实现反向代理
- 第15章 LinkedList类(暂无)
- 炫酷的Linux终端命令大全-1
- 修改 WordPress 文件上传目录
- 解决VS2005 VS2008 vs2010断点无效-源代码与原始版本不同
- 类linux系统/proc/sysrq-trigger文件功能作用
- 创建XML文件
- java连接mysql源码
- 初学者易上手的SSH-hibernate03 三大状态与缓存
- Java基础 -- 深入理解Java类型信息(Class对象)与反射机制
- maya权重拷贝一对一,一对多
- [easyUI] datagrid 数据格 可以进行分页
- SpringMVC4返回json
- centos6.5重新调整/home和跟目录/大小
- LeetCode 561 Array Partition I 解题报告
- Nginx开启Gzip详解
- jmeter插件如何协助进行内存监控 之 PerfMon Metrics Collector设置
- [Asp.net MVC]Asp.net MVC5系列——布局视图
- 【转】Graphics 关于呈现质量与合成模式
- 3G下的无压缩视频传输(基于嵌入式linux) (转载)
热门文章
- Hadoop: Add third-party libraries to MapReduce job
- android ndk native错误分析方法
- [nQSError: 37001]Could not connect to the Oracle BI Server Instance
- java第六节 字符串/集合
- 使用badblocks检测坏块
- Libevent例子(一)
- Utils--封装好的下载图片的方法
- Map的深浅拷贝的探究
- Vista/Win7以上系统查看和清除本地DNS缓存新方法
- 向大家介绍15个漂亮的Ubuntu GDM主题