导入 kotlin(7)】的更多相关文章

导入包 除了默认导入之外,每个文件可以包含它自己的导入指令. 导入语法在语法中讲述.可以导入一个单独的名字,如.import foo.Bar // 现在 Bar 可以不用限定符访问也可以导入一个作用域下的所有内容(包.类.对象等) :import foo.* // “foo”中的一切都可访问如果出现名字冲突,可以使用 as 关键字在本地重命名冲突项来消歧义:import foo.Bar // Bar 可访问import bar.Bar as bBar // bBar 代表“bar.Bar”关键字…
上一篇文章介绍了如何搭建Kotlin的开发环境,可是这个开发环境依然基于Android Studio,而在Android Studio上使用Java进行编码,本来就是理所应当的,何必还要专门弄个Kotlin,这个Kotlin相比Java到底有哪些好处呢? 我们可以把Kotlin看作是Java的升级版,它不但完全兼容Java,而且极大精简了代码语法,从而使开发者专注于业务逻辑的编码,无需在繁琐的代码框架之间周旋.当然,若想充分运用Kotlin的优异特性,除了导入Kotlin的核心库,还得导入Kot…
1. 改进点/基础 //安全判空 val length = text?.length; //类型转换 if (object is Car) { var car = object as Ca } //操作符变化 & and | or ^ xor >> shr << shl //打印日志 print("123123") println("asdassda") 2. 字符串 //多行字符串 val xx = ""&quo…
1.工程manifest中的application节点有冲突时,添加 xmlns:tools="http://schemas.android.com/tools" tools:replace="android:name,allowBackup,icon,theme,label" 2.第三方包不能重复引入 3.java的android工程,在导入kotlin的android工程时,要配置 compile 'com.mapzen:on-the-road:0.8.1' r…
一.什么是KMM? Kotlin Multiplatform Mobile ( KMM ) 是一个 SDK,旨在简化跨平台移动应用程序的创建.在 KMM 的帮助下,您可以在 iOS 和 Android 应用程序之间共享通用代码,并仅在必要时编写特定于平台的代码. KMM用纯Kotlin编写一次代码,即可在iOS和Android上运行,开发应用的公共业务逻辑只需要编写一次.KMM减少了为不同平台编写和维护相同代码所花费的时间.在Jenkins上一次构建可以产出aar.framework.klib,…
网页链接:https://kotlinlang.org/docs/reference/basic-types.html 2.   基本概念 2.1.  基本类型 从可以在任何变量处理调用成员函数和属性角度来说,在Kotlin开发语言中,一切都是对象.有些类型是内嵌的,它们的实现进行过优化,用户看到的仍是原始类.在这节中,我们说明大部分这些类型:数字,字符,布尔和数组. 2.1.1.   数字 Kotlin开发语言处理数组的方法类似Java开发语言,但是也有差别.例如,没有隐含的数字扩宽的转换,并…
开始阅读Kotlin官方文档.先上文档目录.有些内容还未阅读,有些目录标目翻译还需琢磨琢磨.后续再将具体内容的链接逐步加上. 文档链接:https://kotlinlang.org/docs/kotlin-docs.pdf 网页链接:https://kotlinlang.org/docs/reference/ 1. 入门1.1.基本语法1.1.1. 定义包1.1.2. 定义函数1.1.3. 定义局部变量1.1.4. 使用字符串模板1.1.5. 使用条件表达式1.1.6. 使用nullable值检…
原文标题:Kotlin for Android (IV): Custom Views and Android Extensions 原文链接:http://antonioleiva.com/kotlin-android-custom-views/ 原文作者:Antonio Leiva(http://antonioleiva.com/about/) 原文发布:2015-05-07 在阅读了扩展函数和默认值能做什么后,你可能想知道接下来是什么.如我们在Kotlin的第一篇文章说的那样,该语言可以使得…
这是关于Kotlin的第三篇. 原文标题:Kotlin for Android (III): Extension functions and default values 原文链接:http://antonioleiva.com/kotlin-android-extension-functions/ 原文作者:Antonio Leiva(http://antonioleiva.com/about/) 原文发布:2015-04-06 在你了解Kotlin的基本知识和怎样配置你的项目后,现在我们可以…
1.Hello, Kotlin Bugly 技术干货系列内容主要涉及移动开发方向,是由 Bugly邀请腾讯内部各位技术大咖,通过日常工作经验的总结以及感悟撰写而成,内容均属原创,转载请标明出处. 1.1 Kotlin的身世 写了许久Java,有没有发现其实你写了太多冗余的代码? 后来你体验了一下Python,有没有觉得不写分号的感觉真是超级爽? 你虽然勤勤恳恳,可到头来却被NullPointerException折磨的死去活来,难道就没有受够这种日子么? 直到有一天你发现自己已经写了好几十万行代…
作者:Antonio Leiva 时间:Jan 11, 2017 原文链接:https://antonioleiva.com/extension-functions-kotlin/ 扩展函数是Kotlin提供的非常酷的特性,在编写Android应用程序时,你将发现自己会大量使用它. 我们必须承认Android框架有时做些事有点困难,在Java中我们唯一的解决方案是把我们要做事封装起来,或利用可读性差的类静态方法. 你想怎样才能加额外函数到框架类?这就是Kotlin扩展函数允许我们做的. Kotl…
作者:Antonio Leiva 时间:Jan 19, 2017 原文链接:https://antonioleiva.com/anko-background-kotlin-android/ Anko是由Jetbrains用Kotlin开发的Android库,它可以用于很多不同的方面.它的主要特性是使用DSL代码创建视图. 虽然这可能是很有趣的,然而事实是我很久以来一直很好地使用XML.所以还没有太多地试用这一特性. 其实它还有其他非常有用的特性,这就是我今天要告知你它是十分酷的原因. Anko用…
Kotlin 是由 JetBrains 开发的基于JVM的语言.JetBrains 因为创造了一个强大的Java开发 IDE(Intellij) 而被大家所熟知.Android Studio 就是基于Intellij IDEA 的开源社区版,今年的I/O大会上谷歌宣布 Kotlin 正式成为 Android 的官方语言. Kotlin 是使用 Java 开发者的思维被创建的,相比于 JAVA 具有如下优势: 简洁,通过支持 variable type inference,higher-order…
直奔主题 第一步:为AndroidStudio安装Kotlin插件 在线安装步骤:File—>Settings—>Plugins—>Install JetBrains plugin…出现以下界面,选中Kotlin 点击右边的Install(因为我的已经安装了所以显示的是Update升级) 然后就是漫长的等待,安装完成后会提示重启AndroidStudio 由于本人在线安装没有成功,选择了离线安装... 离线安装步骤 首先去下载AndroidStudio用的Kotlin插件  分享一下我的…
本文同步自 博主的私人博客wing的地方酒馆 在前面的博客中,有一个栗子,是点击按钮转跳的监听器. button.setOnClickListener { val user = User("name") user.id = "100" SecondActivity.startActivity(this,user) } 可以看到,不用再new一个OnClickListener了.实际上这种写法是lambda的一种简略模式,通常情况下匿名内部类可以以如下表现形式展示:…
让你的代码量减少3倍!使用kotlin开发Android(一) 创建Kotlin工程 本文同步自博主的私人博客:wing的地方酒馆 写在前面 使用kotlin开发android已经两周多了.得到的好处太多,敲代码简直是爽的飞起.kotlin简单,易用,代码量少.这么爽的东西,不敢私藏,所以写出来与大家分享. 可能标题说减少3倍你不信,但事实上并不夸张.通过学习本系列文章,你会发现,代码.真的少了很多. 本系列文章将会使用kotlin从无到有撸一个android小应用程序(不是微信小程序= =!)…
下面就为大家介绍怎么使用Kotlin来开发Android 上面这篇中我们在下载Kotlin插件的时候也下了一个功能扩张插件,其实这个插件大有用处,它可以使得我们在不使用注解和第三方库的情况下不使用findViewById来实例化控件,我们只需要导入对应的布局然后直接使用id来使用这个View就可以了. 扩展功能插件的使用 要使用这个功能: 1.首先需要导入这个插件的依赖,在Module的gradle中: classpath "org.jetbrains.kotlin:kotlin-android…
WeTest 导读 Kotlin 已经出来较长一段时间了,有些同学已经对Kotlin进行了深入的学习,甚至已经运用到了自己的项目当中,但是还有较多同学可能只是听过Kotlin或简单了解过,这篇文章的目的是让这些同学对Kotlin有一个系统全面的认识,让有兴趣的同学在之后学习的时候能更加的轻车熟路. 什么是kotlin? 一.一门静态编程语言 跟java,c一样的强类型语言,变量的数据类型在编译时确定.对比的JavaScript,python则是动态编程语言. 二.JetBrians开发设计 一家…
现在 Kotlin 安卓扩展插件能够提供与这些开源库功能相同的体验,不需要添加任何额外代码. import kotlinx.android.synthetic.main.activity_main.* class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.l…
进行App开发的时候,使用震动器要在AndroidManifest.xml中加上如下权限: <!-- 震动 --> <uses-permission android:name="android.permission.VIBRATE" /> 让手机震动的功能用到了震动器Vibrator类,而震动器对象从系统服务VIBRATOR_SERVICE获得,实现该功能的代码很简单,即便用Java书写也只有以下两行代码: Vibrator vibrator = (Vibrat…
json是App进行网络通信最常见的数据交互格式,Android也自带了json格式的处理工具包org.json,该工具包主要提供了JSONObject(json对象)与JSONArray(json数组)的解析处理.下面分别介绍这两个工具类的用法:1.JSONObjectJSONObject的常用方法如下所示:构造函数 : 从指定字符串构造出一个JSONObject对象.getJSONObject : 获取指定名称的JSONObject对象.getString : 获取指定名称的字符串.getI…
Kotlin 可以对一个类的属性和方法进行扩展,且不需要继承或使用 Decorator 模式. 扩展是一种静态行为,对被扩展的类代码本身不会造成任何影响. 扩展函数 扩展函数可以在已有类中添加新的方法,不会对原类做修改,扩展函数定义形式: fun receiverType.functionName(params){ body } receiverType:表示函数的接收者,也就是函数扩展的对象 functionName:扩展函数的名称 params:扩展函数的参数,可以为NULL 以下实例扩展…
环境说明: 时间:2017-09-26 OS name: "mac os x", version: "10.12.4", arch: "x86_64", family: "mac" Git version:git version 2.11.0 (Apple Git-81) Maven: Apache Maven 3.3.9 Java version: 1.8.0_121 1. 下载spring-framework源代码 访问s…
共享参数毕竟只能存储简单的键值对数据,如果需要存取更复杂的关系型数据,就要用到数据库SQLite了.尽管SQLite只是手机上的轻量级数据库,但它麻雀虽小.五脏俱全,与Oracle一样存在数据库的创建.变更.删除.连接等DDL操作,以及数据表的增删改查等DML操作,因此开发者对SQLite的使用编码一点都不能含糊.当然,Android为了方便开发者的工作,已经提供了一个操作SQLite的工具类即SQLiteOpenHelper,在App开发时可由SQLiteOpenHelper派生出具体的业务表…
前面在介绍列表视图和网格视图时,它们的适配器代码都存在视图持有者ViewHolder,因为Android对列表类视图提供了回收机制,如果某些列表项在屏幕上看不到了,则系统会自动回收相应的视图对象.随着用户的下拉或者上拉手势,已经被回收的列表项要重新加载到界面上,倘若每次加载都得从头创建视图对象,势必增加了系统的资源开销.所以ViewHolder便应运而生,它在列表项首次初始化时,就将其视图对象保存起来,后面再次加载该视图时,即可直接从持有者处获得先前的视图对象,从而减少了系统开销,提高了系统的运…
Activity的活动页面跳转是App最常用的功能之一,在前几章的demo源码中便多次见到了,常常是点击界面上的某个按钮,然后跳转到与之对应的下一个页面.对于App开发者来说,该功能的实现非常普通,使用Java编码不过以下两行代码而已: Intent intent = new Intent(MainActivity.this, LinearLayoutActivity.class); startActivity(intent); 上面代码的关键之处在于Intent的构造函数,其中第一个参数指定了…
Kotlin快速入门 一.函数 /* * 1.函数可以定义在文件最外层,不需要把它放在类中 * 2.可以省略结尾分号 * */ fun main(args: Array<String>) { println(max2(1,2)) println(max(3,5)) } fun max(a: Int, b: Int): Int{ return if (a>b) a else b } /* * 与Java不同,Kotlin中,除了循环(for.do和do/while) * 以外大多数控制结构…
Kotlin 文件以 .kt 为后缀. 包声明 代码文件的开头一般为包的声明: package com.runoob.main import java.util.* fun test() {} class Runoob {} kotlin源文件不需要相匹配的目录和包,源文件可以放在任何文件目录. 以上例中 test() 的全名是 com.runoob.main.test.Runoob 的全名是 com.runoob.main.Runoob. 如果没有指定包,默认为 default 包. 默认导入…
为什么写此文 Kotlin很烦,Gralde很烦,还都是升级狂,加一块更烦.几个月不接触Kotlin,再次上手时便一片迷茫.所以记录此文,以便再次上手时查阅. 使用Gradle创建Kotlin项目 mkdir hellokt 创建项目文件夹 cd hellokt 切换到项目根目录 gradle init --type java-application 使用Gradle初始化Java项目 rm -rf src/main/java src/test/java gradle gradlew gradl…
提醒对话框手机上的App极大地方便了人们的生活,很多业务只需用户拇指一点即可轻松办理,然而这也带来了一定的风险,因为有时候用户并非真的想这么做,只是不小心点了一下而已,如果App不做任何提示的话,继续吭哧吭哧兀自办完业务,比如转错钱了.误删资料了,往往令用户追悔莫及.所以对于部分关键业务,App为了避免用户的误操作,很有必要弹出消息对话框,提醒用户是否真的要进行此项操作.这个提醒对话框便是App开发常见的AlertDialog,说起这个AlertDialog,安卓开发者都有所耳闻,该对话框不外乎…