Kotlin

我想在 Activity 和 Fragment 之间共享 ViewModel

介绍 作为前提,我想在不引入已弃用的 ViewModelProviders.of 和 fragment-ktx 的情况下使用 ViewModel 共享数据。 程序 不带参数的 ViewModel当AndroidViewModel(application)被继承且参数为唯一应用时 然后您可以使用 »

Kotlin协程的启动方式介绍

目录 1.GlobalScope.launch 2.runBlocking 启动协程 3.async启动协程 启动协程的基本方式 1.GlobalScope.launch 代码示例: fun testGlobalScope() { GlobalScope.launch { »

ViewBinding 与 Kotlin 委托双剑合璧

请点赞关注,你的支持对我意义重大。 ? Hi,我是小彭。本文已收录到 GitHub · Android-NoteBook 中。这里有 Android 进阶成长知识体系,有志同道合的朋友,关注公众号 [彭旭锐] 带你建立核心竞争力。 前言 大家好,我是小彭。 过去两年,我们在掘金平台上发表过一些文章 ... »

Kotlin Flow常用封装类StateFlow使用详解

目录 Kotlin中StateFlow的使用 一、StateFlow的使用 二、替代LiveData 总结 Kotlin中StateFlow的使用 StateFlow 是 Flow 的实现,是一个特殊的流,默认的 Flow 是冷流,而StateFlow 是热流,和 LiveData »

Kotlin Flow操作符及基本使用详解

目录 一、Flow的基本概念 二、Flow的生命周期与异常处理 2.1 开始与结束 2.2 异常的处理 2.3 retry的处理 2.4 超时的处理 2.5 Flow的取消 三、Flow的创建方式 四、Flow的接收方式 五、Flow的转换操作符 5.1 基本操作符 5.2 特殊操作符 »

Kotlin作用域函数应用详细介绍

目录 1.前置知识 2.使用 3.源码赏析 3.1 let和run 3.2 also和apply 3.3 repeat 3.4 with 4.反编译 5.小结 平时看博客或者学知识,学到的东西比较零散,没有独立的知识模块概念,而且学了之后很容易忘。于是我建立了一个自己的笔记仓库 (一个 »

kotlin浅析when与循环的使用

目录 使用区间 When 表达式 For 循环 返回和跳转 标签 Break和Continue 标签处返回 使用区间 使用 in 运算符来检测某个数字是否在指定区间内,区间格式为x..y: 实例 fun main(args: Array<String>) { va »

Jetpack Compose学习(8)——State及remeber

原文地址: Jetpack Compose学习(8)——State状态及remeber关键字 - Stars-One的杂货小窝 之前我们使用TextField,使用到了两个关键字remember和mutableStateOf,这两个是做什么用的呢?本篇特来补充说明下 mutableStateOf 之 ... »

[Android开发学iOS系列] 语言篇: Swift vs Kotlin

这篇文章是想着帮助Android开发快速学习Swift编程语言用的. (因为这个文章的作者立场就是这样.) 我不想写一个非常长, 非常详尽的文章, 只是想写一个快速的版本能让你快速上手工作. ... »

mengdd iOS

Kotlin学习快速入门(7)——扩展的妙用

原文地址: Kotlin学习快速入门(7)——扩展的妙用 - Stars-One的杂货小窝 之前也模模糊糊地在用这个功能,也是十分方便,可以不用继承,快速给某个类增加新的方法,本篇便是来讲解下Kotlin中扩展这一概念的使用 说明 先解释一下,扩展的说明,官方文档上解释: Kotlin 能够扩展一个 ... »

rxjava回调地狱-kotlin协程来帮忙

本文探讨的是在tomcat服务端接口编程中, 异步servlet场景下( 参考我另外一个文章),用rxjava来改造接口为全流程异步方式 好处不用说 tomcat的worker线程利用率大幅提高,接口的并发能力提升 全流程无阻塞等待式(非例如像Future.get这种伪异步) 业务逻辑处理上多个操作 ... »

yudongdong java

Kotlin/Java下载文件(基于HttpClient Fluent API)

fluent-hc是Apache下基于HttpClient的流式组件。从4.2版开始,HttpClient附带了一个基于流畅接口概念的易于使用的facade API。Fluent facade API只公开HttpClient最基本的功能,适用于不需要HttpClient完全灵活性的简单用例。例如,fluent facade API使用户不必处理连接管理和资源释放。 2. 添加依赖 //buil »

kotlin中this 表达式

this表达式,可以表示当前函数的接收者,在类的成员函数中,this 指向这个类的当前对象实例,在扩展函数中或带有接收者数字面值,this代表调用函数时,在点号左侧传递的接收者参数 如果this没有限定符,那么它指向包含当前代码的最内层范围.,如果想指向其他范围的内的this,需要使用标签限定符 为了范围最外层范围的如类内的this,需要使用this@label,其中@label是一个标签,代表我 »

Kotlin入门(32)网络接口访问

手机上的资源毕竟有限,为了获取更丰富的信息,就得到辽阔的互联网大海上冲浪。对于App自身,也要经常与服务器交互,以便获取最新的数据显示到界面上。这个客户端与服务端之间的信息交互,基本使用HTTP协议进行通信,即App访问服务器的HTTP接口来传输数据。HTTP接口调用在Java代码中可不是一个轻松的活,开发者若用最基础的HttpURLConnection来编码的话,至少要考虑以下场景的处理:1、H »

kotlin默认参数和具名参数

纯语法操练,这里先定义一些数学计算公式,顺便来复习复习,如下: 然后编写测试代码来调用下它们: 编译运行: 但是!!!对于这四个函数都有一个参数是pi: 而实际上它是一个常量,可以手动给它定义一个默认参数,而不用每次都需要人为传给它,那如何定义默认参数呢? 这时调用带pi参数的函数就可以省略传pi啦,如下: 很显然报错了,这又是为啥呢?这时需要用到kotlin的具名参数,啥叫具名参数呢 »

使用Kotlin开发Android应用(IV):自定义视图和Android扩展

在读完扩展函数和默认值这篇文章之后,那么接下来要介绍什么呢?在本系列第一篇文章中我们说过,Kotlin使得Android开发更加简单,本文我们将进一步作介绍。 自定义视图 你应该还记得,在说到Kotlin的局限性时,我们提到了在Kotlin早期版本(M10之前)是不支持自定义视图的,因为当时只能为每个类创建一个构造函数。这通常是足够的,因为使用可选参数,我们可以创建足够多的构造函数变种,例如: c »

Typecho-Material主题不支持Kotlin代码高亮的解决方案

Typecho-Material主题不支持Kotlin代码高亮的解决方案 Overview 最近通过Typecho搭建了一个Blog,采用了 Material主题,其他的都挺好,也挺喜欢这个主题,但是因为最近一直使用Kotlin语言,但是这个主题却没有Kotlin语言的高亮,这就比较难受了,所以就自己稍微修改了一下。 从highlightjs选择主题 Material 主题采用 hightli »