Android Studio 3.0 原生支持kotlin 例子详解

 更新时间:2017年05月19日 10:29:41   作者:爱学习的坏蛋  
这篇文章主要介绍了 Android Studio 3.0 原生支持kotlin 例子详解,非常具有实用价值,需要的朋友可以参考下

安卓虽然已经成为了移动设备第一操作系统,且影响力也延伸到了汽车和tv端,不过对于谷歌来说,需要依靠Java来做安卓开发一直是一个心病,因为Oracle公司因为java和谷歌在安卓系统上的诉讼搞得心力憔悴。

现在好了,谷歌官方正式支持Kotlin(官方网站 https://kotlinlang.org/,居然没被墙)成为官方认可的安卓开发第一语言,而且从Android Studio 3.0开始,将直接集成Kotlin而无需安装任何的插件。这个语言是由JetBrains去年发明的,它受到欢迎,主要是因为它运行在Java虚拟机上,可以和java一起使用来构建应用程序。 这意味着开发人员可以使用现有的代码,轻松地构建新的功能或替代Java代码。 由于Kotlin依赖于Java,所以这两种语言都将继续得到支持。

谷歌将致力于推动Kotlin相关安卓开发工具的发展,使得使用Kotlin来开发安卓应用更加高效。当然生态系统不是一天就可以创建好的,Kotlin何时可以取代Java成为安卓开发第一语言还需要时日。

开干吧

假设你已经下载好了android studio 3.0

1.创建项目,必须要选中include Kotlin 不然就还是默认java开发

这里写图片描述

2.下一步, 下一步 然后就完成了(第一次会很长的时间, 因为那些库基本上都在国外,你懂的)

这里写图片描述

val fab = findViewById(R.id.fab) as FloatingActionButton

这里的”findViewById”可以省略, 我们再添加一个, 在app/build.gradle里面

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

然后代码就可以写成

fab.setOnClickListener { view->
      Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG).setAction("Action", null).show()
    }

有没有惊喜? 其实呢, kotlin我最喜欢的还是它的扩展特性, 这样就可以省略了很多工具类. 比如我们给View添加一个扩展方法.
新建一个kotlin文件:ViewEx, 添加上扩展函数

这里写图片描述 

测试一下:

 override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)
    val toolbar = findViewById(R.id.toolbar) as Toolbar
    setSupportActionBar(toolbar)

    fab.setOnClickListener { view->
      Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG).setAction("Action", null).show()

      view.log("测试扩展函数")
      println("扩展属性值:${view.type}")
    }
  }

打印出结果:

这里写图片描述

是不是很方便? 不用单独去写什么工具类了.

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Android使用Photoview实现图片左右滑动及缩放功能

    Android使用Photoview实现图片左右滑动及缩放功能

    这篇文章主要为大家详细介绍了Android使用Photoview实现图片左右滑动及缩放功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-01-01
  • Android使用http请求手机号码归属地查询代码分享

    Android使用http请求手机号码归属地查询代码分享

    这篇文章主要介绍了Android使用http请求手机号码归属地查询代码分享的相关资料,需要的朋友可以参考下
    2016-06-06
  • fragment中的add和replace方法的区别浅析

    fragment中的add和replace方法的区别浅析

    使用 FragmentTransaction 的时候,它提供了这样两个方法,一个 add , 一个 replace ,对这两个方法的区别一直有点疑惑。下面小编通过本文给大家简单介绍下fragment中的add和replace方法的区别,一起看看吧
    2017-01-01
  • Android实现QQ手机管家悬浮小火箭效果

    Android实现QQ手机管家悬浮小火箭效果

    这篇文章主要介绍了Android实现QQ手机管家悬浮小火箭效果,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-05-05
  • Android数据库操作工具类分享

    Android数据库操作工具类分享

    这篇文章主要为大家详细介绍了Android数据库操作工具类的相关代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-10-10
  • Android开发Jetpack组件Lifecycle原理篇

    Android开发Jetpack组件Lifecycle原理篇

    这一篇文章来介绍Android Jetpack架构组件的Lifecycle; Lifecycle用于帮助开发者管理Activity和Fragment 的生命周期, 由于Lifecycle是LiveData和ViewModel的基础;所以需要先学习它
    2022-08-08
  • android滑动解锁震动效果的开启和取消

    android滑动解锁震动效果的开启和取消

    在4.0的圆环滑动解锁中,我们点击下去的时候会有震动效果,因为这个控件设置的震动效果没有绑定设置中设置的触摸振动开关来取消振动效果,下边这个例子实现了开启和取消的方法
    2013-06-06
  • 保持Android Service在手机休眠后继续运行的方法

    保持Android Service在手机休眠后继续运行的方法

    下面小编就为大家分享一篇保持Android Service在手机休眠后继续运行的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-03-03
  • Flutter调用Android和iOS原生代码的方法示例

    Flutter调用Android和iOS原生代码的方法示例

    这篇文章主要给大家介绍了关于Flutter调用Android和iOS原生代码的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Flutter具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-04-04
  • Android内容提供者ContentProvider用法实例分析

    Android内容提供者ContentProvider用法实例分析

    这篇文章主要介绍了Android内容提供者ContentProvider用法,结合实例形式较为详细的分析了内容提供者ContentProvider获取及解析数据的相关技巧,需要的朋友可以参考下
    2016-03-03

最新评论