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使用Kotlin
Kotlin官方参考 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条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- SpringBoot2整合Redis,开启缓存,提高访问速度
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- MySQL8.0.19开启GTID主从同步CentOS8
- Mario游戏-低调大师作品
- Linux系统CentOS6、CentOS7手动修改IP地址
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- Docker安装Oracle12C,快速搭建Oracle学习环境
- CentOS7安装Docker,走上虚拟化容器引擎之路