Kotlin for Android
在Google IO 2017 大会上,Google将 Kotlin列为 Android官方开发语言,Android Studio 3.0 也默认集成了Kotlin插件。
Android Studio 3.0目前是预览版,下载地址: 
https://developer.android.google.cn/studio/preview/index.html
如果您是更早的版本,点击Android Studio File->Settings->Plugins,搜索Kotlin,然后重启Android Studio。
Kotlin相对Java语言更加简洁,虽然与Java语法并不兼容,但Kotlin被设计成可以和Java代码相互运作,并可以重复使用Java编写好的框架。也就是说一个项目允许Java和Kotlin共同开发的,不会有任何兼容性的问题。
接下来我们就来演示下使用Kotlin创建Android工程
创建工程
使用Android Studio 3.0版本,创建工程时勾选 Include Kotlin support 选项,这是和之前唯一一处不同。
此处默认生成MainActivity.kt 相当于之前的MainActivity.java 
//冒号表示继承 相当于Java中的extends
class MainActivity : AppCompatActivity() {
    //问号表示该变量可以为空
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
    }
}项目目录下的build.gradle文件 也有些变化:
buildscript {
    ext.kotlin_version = '1.1.2-4' //指定了Kotlin的版本号
    repositories {
        maven { url 'https://maven.google.com' }
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.0.0-alpha1'
        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()
        maven { url 'https://maven.google.com' }
        mavenCentral()
    }
}
task clean(type: Delete) {
    delete rootProject.buildDir
}
app/build.gradle文件也添加了kotlin-android插件
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
android {
    compileSdkVersion 25
    buildToolsVersion "25.0.2"
    defaultConfig {
        applicationId "com.a520wcf.kotlin"
        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 "org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version"
    compile 'com.android.support:appcompat-v7:25.3.1'
    testCompile 'junit:junit:4.12'
    compile 'com.android.support.constraint:constraint-layout:1.0.0-beta4'
}如果你使用是Android Studio 3.0以下的版本,gradle文件中需要你自己手动配置。
创建新的类时也可以选择使用kotlin或者Java语言 
Kotlin和Java语法对比
Kotlin总体而言要简洁一些。 
1.设置点击事件 
 先回忆Java写法
FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
fab.setOnClickListener(new View.OnClickListener() {
  @Override
  public void onClick(View view) {
    ...
  }
});再来对比Kotlin写法
val fab = findViewById(R.id.fab) as FloatingActionButton
fab.setOnClickListener {
  ...
}2.条目点击事件 
 先看Java写法
private BottomNavigationView.OnNavigationItemSelectedListener mOnNavigationItemSelectedListener
    = new BottomNavigationView.OnNavigationItemSelectedListener() {
  @Override
  public boolean onNavigationItemSelected(@NonNull MenuItem item) {
    switch (item.getItemId()) {
      case R.id.navigation_home:
        mTextMessage.setText(R.string.title_home);
        return true;
      case R.id.navigation_dashboard:
        mTextMessage.setText(R.string.title_dashboard);
        return true;
    }
    return false;
  }
};再来看下Kotlin写法
private val mOnNavigationItemSelectedListener
    = BottomNavigationView.OnNavigationItemSelectedListener { item ->
  when (item.itemId) {
    R.id.navigation_home -> {
      mTextMessage.setText(R.string.title_home)
      return@OnNavigationItemSelectedListener true
    }
    R.id.navigation_dashboard -> {
      mTextMessage.setText(R.string.title_dashboard)
      return@OnNavigationItemSelectedListener true
    }
 }
 false
}更多精彩请关注微信公众账号likeDev 
 关注公众号
关注公众号
					低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 
							
								
								    上一篇
								      在Android Studio使用KotlinKotlin官方参考 Get Started with Kotlin on Android 几个技能 首先需要下载Android Studio 3.0 Canary 1版本,Android Studio的一大特性就是多个不同的版本可以同时运行,所以你不用担心你电脑上的稳定版本会收到影响。 下载地址:https://developer.android.com/studio/preview/index.html 将Java代码转化为Kotiln Android Studio 3.0 十分人性化的提供了将现有Java文件转化为Kotlin文件的方法,这就是说你可以快速的将你用Java编写的Android项目快速的转变成使用Kotlin编写的项目。当然,这种转化可能会有一些小错误,但你任然可以信任它,即使你后期还需对转化中出现的错误进行一些修复。 来看看这个过程到底有多简单吧! 点击File > New > Kotlin File/Class来创建一个.kt文件; 把需要转化的Java代码复制到该文件中,出现以下弹窗: image 点击Yes即可。 Java文件: public c... 
- 
							
								
								    下一篇
								      Android开发:Kotlin下配置DataBinding近日,随着Google召开了Google I/O 2017,Kotlin大火一把。因为Google宣布Kotlin为First-class开发语言作 为一名Kotlin忠实粉丝,高兴地很呀。虽然短 时间内不太可能替代Java,但这次官宣意味承认了Kotlin在Android开发中的合法地位,让想尝试Kotlin却有顾率的开发者可以放心地使用Kotlin(比如说我)。 有人说没必要尝试Ktolin,Kotlin没有什么吸引人的地方,相比java没简洁多少,只不是多一些语法糖而已。对我而言,我就是喜欢这些语法糖。当然了,此时也 应该回想回想Eclipse。Kotlin有诸如kotlin-android-extensions 以及Anko这种优秀的插件或者库,但是我也很偏爱Databinding。下面就讲如何让kotlin与databinding合谐并存 开发环境 AndroidStudio 2.3.2 Kotlin:1.1.2-3 安装Kotlin插件 打开settings去plugin里面搜索kotlin,然后install就可以了。以在tools里面我们就可以查看kotlin了,在这里... 
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- CentOS6,CentOS7官方镜像安装Oracle11G
- Windows10,CentOS7,CentOS8安装Nodejs环境
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- 2048小游戏-低调大师作品
- 面试大杂烩
- SpringBoot2整合Redis,开启缓存,提高访问速度
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题

 
			 
				 
				 
				 
				 
				 
				 
				



 微信收款码
微信收款码 支付宝收款码
支付宝收款码