Kotlin相信现在大家都不陌生了,它是谷歌在5月18日,它的安卓团队在GoogleI/O 2017 大会上正式宣布 Kotlin 成为官方头等支持语言。最近一段时间我学习和研究了下Kotlin的特点和基本用法。大概用了一天时间,把Android的一些主要的APP功能,用Kotlin语言和结构重新写了一遍,体会就是:上手和学习很快、语法简洁、代码少写了很多、不用很麻烦的写控件绑定了(自动导包)、兼
转载
2023-08-31 08:07:28
131阅读
# Android Kotlin DSL 布局
在Android开发中,使用DSL(领域特定语言)来创建布局可以带来更加简洁优雅的代码风格。Kotlin语言的DSL支持让开发者可以通过编写更具表现力和可读性的代码来构建布局,这样不仅可以提高开发效率,还可以降低代码维护的复杂度。
本文将介绍如何在Android开发中使用Kotlin DSL来创建布局,并演示一些常用的布局示例。
## Kotl
原创
2024-03-07 04:44:49
230阅读
今天开始,五万和大家一起来学习Kotlin Kotlin在Android Studio 3.0中得到了充分的支持,因此很容易创建带有Kotlin文件的新项目,将Kotlin文件添加到现有项目中,并将Java语言代码转换为Kotlin。然后,您可以使用您的Kotlin代码使用所有Android Studio的现有工具,比如autocomplete、lint checker、重构、调试等等。这个页面
转载
2023-10-31 17:33:00
154阅读
在今年的google大会上,Kotlin被google推为官方语言了,但是一直没去体验koltin的优势,这几天正好有空,于是乎,就动手搭建了一个小demo。在编写demo的过程中,看了一些博客,但是,觉得写得不是很清晰,所以,自己打算写一篇笔记来留下自己的脚印。 创建项目和创建Android项目一样一样的: 1、设置项目名称: 2、选择Android版本: 3、为项目选择一个activi
转载
2024-03-12 14:51:38
52阅读
线性布局线性布局LinearLayout是最常用的布局,顾名思义,它下面的子视图像是用一根线串了起来,所以其内部视图的排列是有顺序的,要么从上到下垂直排列,要么从左到右水平排列。排列顺序只能指定一维方向的视图次序,可是手机屏幕是个二维的平面,这意味着还剩另一维方向需要指定视图的对齐方式。故而线性布局
转载
2019-06-22 15:48:00
125阅读
2评论
前言在之前分享过一篇文章 Google 推荐在 MVVM 架构中使用 Kotlin Flow ,在这篇文章中分析了如何在 MVVM 架构中使用 Kotlin Flow,以及 Kotlin Flow 为我们解决了以下问题:LiveData 是一个生命周期感知组件,最好在 View 和 ViewModel 层中使用它,如果在 Repositories 或者 DataSource 中使用会有几个问题它不
关于协程我们不多阐述,详细内容请查看官方文档,本文只谈谈 runBlocking 与 coroutineScope。runBlocking我们先来看看 runBlocking 文档是如何描述该函数的:Runs a new coroutine and blocks the current thread interruptibly until its completion. This function
转载
2024-06-14 22:04:53
28阅读
对象表达式(object expression)对象表达式:在实现使用的地方立即执行对象声明:第一次访问的时候被初始化,延迟初始化。相当于单例伴生对象:在相应的类被加载时初始化的,相当于java静态初始化kotlin的对象表达式是为了解决匿名内部类的一些缺陷而产生的匿名内部类是没有名字的类匿名内部类一定是继承了某个父类,或是实现了某个接口
Java运行时会将该匿名内部类当做它所实现的接口或是所继承
转载
2024-10-07 10:12:54
26阅读
2013 年到 2014 年这两年 google 相序发布了 4.4 和 5.0,前面讲过,早期的 Android 就是初生的婴孩,安全、性能都存在问题。比如 2012 年,有人让我写程序监听别人的电话、短信,居然轻而易举地就能实现这个功能,可见安全漏洞是多么明显,然而在4.4、5.0 上就难了,在后面的 6.x、7.x 就更难了。在性能方面,我觉得 4.4 和 5.0 具有划时代的意义,4.4
前一章节我们讲解了Kotlin Flow的基本用法,这一节我们来实践将Kotlin Flow应用在Android应用中。我们从三个方面进行讲解:网络数据的请求在编写UI界面中的使用结合Room在数据库中的使用MVVM架构中留给Flow的位置我们再来看一下Google给我们规范的MVVM架构图:MVVM架构中数据回流的方式主要是利用LiveData来实现:鉴于LiveData的功能很单一,我们可以将
转载
2024-07-08 22:32:00
266阅读
自定义控件时,最好抽象得彻底,并且编写需严谨,因为可能程序中多处都会引用到它,或者提供给团队中的其他人使用。 其一般步骤为:1.创建控件的类文件,定义其功能逻辑。一般继承自现有控件或者View2.在res/values目录下创建attrs.xml文件,用于定义该控件的xml标签属性,方便在使用xml声明该控件时设置参数3.实现该控件的构造器,在构造器中把xml标签属性与后台代码中的变量
什么是Kotlin?Kotlin 是 JVM 和 Android 的实用编程语言,结合了OO和功能特性,专注于互操作性,安全性,清晰度和工具支持。作为通用语言,Kotlin 可以在Java工作的地方工作:服务器端应用程序,移动应用程序(Android),桌面应用程序。它适用于所有主要的工具和服务,如IntelliJ IDEA,Android Studio 和 EclipseMaven,Gradle
转载
2023-09-19 19:28:57
410阅读
Kotlin学习系列前言:本系列文章将介绍Kotlin的使用,分为11章进行介绍,以《Kotlin实战》为基础,每章一篇博客,将采用模块化的讲解让读者对Kotlin有深入的了解,适用于有Java开发经验的读者,废话少说,下面就开始介绍Kotlin。第一部分:Kotlin定义和目的目录Kotlin学习系列第一部分:Kotlin定义和目的 一、Kotlin概述:二、Kotlin初体验:三、K
转载
2023-10-25 22:07:02
251阅读
###Kotlin简介####Kotlin是什么Kotlin是JetBrains公司开发的一门语言(主要开发人员是Andrey--Kotlin之父),一圣彼得堡附近的Kotlin岛屿来命名的。保证了Java的生态、静态特性,同时在语法上又灵活一些,比如不写分号、支持扩展方法、支持Lambda、支持函数式编程,空类型安全。Kotlin是一门可以运行在JVM、Android、浏览器、甚至操作系统上面的
转载
2023-10-26 11:45:20
129阅读
嗯,垃圾kotlin,以前老是这个感觉,干嘛非得踩别人坑呀,直到我去面试,额, &
转载
2023-07-06 14:40:06
153阅读
项目概述由于项目的内容比较多,所以本篇主要从项目的框架上来讲述。 首先来看下项目的效果吧:从图片中也可以很清楚的看出,底部和官方的差不多,为主页、消息、发现、个人四 个部分。而发布微博、分组、设置我则是使用悬浮窗实现的(主要是如果设计和官方一样的话上架会被驳回)。现在线上的1.2.0版本是以前的了。现在在做的是1.3.2了,只是一直没时间搞上线。。言归正传,Kibo使用的框架是MVP+Dagg
Kotlin怎样findviewById
Kotlin是先findViewById的方法:
1. 在使用findviewById之前需要在appbuilde.gradle中添加 'kotlin-android-extensions'如图:
apply plugin: 'kotlin-android-extensions'
2. 给控件加ID
转载
2023-07-06 14:38:45
121阅读
前言1 都有哪些坑?1.1 定义的坑1.2 中文文章的坑2 官方文档走一波?2.1 英文阅读恐惧症2.2 官方文档也有坑?2.3 我是这么阅读官方文档的2.3.1 小节标题隐藏的秘密2.3.1.1 Dependency info2.3.1.2 Executing in a background thread2.3.1.3 Use coroutines for main-safety2.3.1.4
使用Kotlin进行Android开发Kotlin非常适合开发Android应用程序,将现代语言的所有优势带入Android平台,无需引入任何新的限制:兼容性: Kotlin与JDK 6完全兼容,确保Kotlin应用程序可以在较旧的Android设备上运行,无任何问题。Kotlin工具在Android Studio中完全支持,与Android构建系统兼容。性能: Kotlin应用程序运行速度与Ja
转载
2023-09-18 16:03:32
130阅读
一.最近新项目开始使用kotlin开发项目,搜集了一些常用命令和常用方法,毕竟现在好多公司都在用kotlin开发项目二.推荐kotlin学习网址kotlin语言中文网三,常用命令及语法1.实例化话对象 不需要new关键字2.没有“new” Kotlin实例化一个对象时不需要new关键字var list=ArrayList()3.变量var、常量val、类型推断 用var定义变量(像js)var n
转载
2023-07-02 11:53:04
93阅读