Kotlin开发实战之hello world
时间:2019-03-30
本文章向大家介绍Kotlin开发实战之hello world,主要包括Kotlin开发实战之hello world使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
工欲善其事必先利其器,工具的安装基于Android studio 2.2.3
Kotlin下载安装(这边我已经安装了就不卸载重新装了,搜索到后直接点击install按钮安装,然后重启就Ok了)
Kotlin插件的支持
在自己引用的build_gradle 中添加插件
apply plugin: 'com.android.application' apply plugin: 'kotlin-android'
然在Project中添加依赖
buildscript { ext.kotlin_version = '1.1.2-4' repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:2.2.3' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } }
添加好了之后点击同步就ok了
Java代码转换成Kotlin代码
1.我们新建一个项目自带空的Activity,可以通过下图这种方式将MainActivity.java装换成MainActivity.kt文件
2.我们装换之后的代码变成下图的样子
Kotlin Android Extensions的使用
1.在build.gradle中添加如下代码,然后同步
apply plugin: 'com.android.application' apply plugin: 'kotlin-android' //---------------这句------------------------- apply plugin: 'kotlin-android-extensions' //-------------------------------------------
2.通过下面一段代码hello word 就完成了
/** * 通过这个我们就能将layout布局目录下的activity_main的属性包裹进来, * 然后直接通过直接设置有点像ButterKnife * 我们直接拿到属性的Id就可以设置属性了,我这边是一个TextView * 就可以直接show_tv.setText();设置他的属性了 */ import kotlinx.android.synthetic.main.activity_main.* class MyActivity : Activity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) textView.setText("Hello, world!") } }
3.属性导入(我们只需要在自己的Activtiy/Fragment中去加入我们布局中的属性去了)
import kotlinx.android.synthetic.main.<layout>.*
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
- Pig、Hive、MapReduce 解决分组 Top K 问题
- Pig、Hive 自定义输入输出分隔符以及Map、Array嵌套分隔符冲突问题
- 新手教程:局域网DNS劫持实战
- 自定义 java 日期、时间 处理函数集
- MapReduce 中的两表 join 几种方案简介
- MapReduce中的自定义多目录/文件名输出HDFS
- 通过hiveserver远程服务构建hive web查询分析工具
- Hive 中内部表与外部表的区别与创建方法
- 常用统计分析 SQL 在 AWK 中的实现
- java 中 16 进制 HEX 转换成字节码形式的 UTF-8
- Hadoop 多表 join:map side join 范例
- 实战 windows7 下 eclipse 远程调试 linux hadoop
- Hive 在多维统计分析中的应用 & 技巧总结
- shell 学习笔记(18)
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- resteasy 接收post请求参数——json and 表单
- 合理配置Mysql缓存,提高缓存命中率
- 浮点数的基本数据类型不能用 == 比较
- centos7 下使用Supervisor监控 gin服务
- Json web token的简单实现 JAVA
- go 指针和内存分配详解
- Git如何解决本地冲突(纯净版)
- No qualifying bean of type 'org.springframework.transaction.PlatformTransactionManager' available:
- typescript中的class和interface
- SSH随笔
- Python爬虫+Flask,带你创建车标学习网站
- Go 堆栈的理解
- Kubernetes 与虚拟化和容器化的关系
- Golang 读、写文件
- 这次妥妥地拿下散列表---基础、如何设计以及扩展使用(LRU)