Kotlin 高阶函数[第一行代码 Kotlin 学习笔记]

2021-07-26
阅读 9 分钟
2.9k
高阶函数和 Lambda 的关系是密不可分的。在第 2 章快速入门 Kotlin 编程的时候,我们已经学习了 Lambda 编程的基础知识,并且掌握了一些与集合相关的函数式 API 的用法,如 map、filter 函数等。另外,在第 3 章的 Kotlin 课堂中,我们又学习了 Kotlin 的标准函数,如 run、apply 函数等。

Kotlin 扩展函数和运算符重载[第一行代码 Kotlin 学习笔记]

2021-07-25
阅读 6 分钟
2.8k
不少现代高级编程语言中有扩展函数这个概念,Java 却一直以来都不支持这个非常有用的功能,这多少会让人有些遗憾。但值得高兴的是,Kotlin 对扩展函数进行了很好的支持,因此这个知识点是我们无论如何都不能错过的。

Kotlin 延迟初始化和密封类[第一行代码 Kotlin 学习笔记]

2021-07-24
阅读 5 分钟
1.6k
前面我们已经学习了 Kotlin 语言的许多特性,包括变量不可变,变量不可为空,等等。这些特性都是为了尽可能地保证程序安全而设计的,但是有些时候这些特性也会在编码时给我们带来不少的麻烦。

Kotlin 标准函数和静态方法[第一行代码 Kotlin 学习笔记]

2021-07-23
阅读 6 分钟
2.1k
with 函数接收两个参数:第一个参数可以是一个任意类型的对象,第二个参数是一个 Lambda 表达式。with 函数会在 Lambda 表达式中提供第一个参数对象的上下文,并使用 Lambda 表达式中的最后一行代码作为返回值返回。示例代码如下:

快速入门 kotlin 编程[第一行代码 Kotlin 学习笔记]

2021-07-22
阅读 14 分钟
1.8k
简单概括一下,就是将事物封装成具体的类,然后将事物所拥有的属性和能力分别定义成类中的字段和函数,接下来对类进行实例化,再根据具体的编程需求调用类中的字段和方法即可。

Android 架构之 MVC 架构模式

2021-06-21
阅读 6 分钟
6.6k
由于 MVP、MVVM、组件化架构的兴起,MVC 架构在 android 中的应用变得越来越少,但 MVC 是基础,理解好 MVC 才能更好的理解 MVP,MVVM,因为后两种都是基于 MVC 发展而来的。
封面图

Android 使用 Kotlin 重写 Gradle 文件(Kotlin Gradle DSL)

2021-06-17
阅读 11 分钟
7.4k
众所周知,我们在 Android Studio 是使用 Gradle 来编译的,Gradle 是一种基于 Groovy 语言的构建工具,我们平时看到的 build.gradle 中的语法结构其实就是 Groovy 提供的 DSL 功能。
封面图

封装万能的 RecyclerView 适配器

2021-06-17
阅读 9 分钟
6.9k
在 Android 项目中,基本上都会有列表功能,而现在的列表功能都是通过 RecyclerView 实现的,当项目中列表功能比较多的时候,每一个 RecyclerView 都需要一个 Adapter 适配器,这样会使得项目中的 Adapter 类非常的多。所以,封装一个万能的 RecyclerView 适配器是可以提高我们的开发效率的。在这之前,我们先来看一下传...
封面图

第一行代码第三版——第四章:UI 开发的点点滴滴

2021-06-17
阅读 32 分钟
2.3k
在过去,Android 应用程序的界面主要是通过编写 XML 的方式来实现的。写 XML 的好处是,我们不仅能够了解界面背后的实现原理,而且编写出来的界面还可以具备很好的屏幕适配性。等你完全掌握了使用 XML 来编写界面的方法之后,不管是进行高复杂度的界面实现,还是分析和修改当前现有的界面,对你来说都将是手到擒来。

Kotlin 类型进阶

2021-01-17
阅读 2 分钟
1.9k
<font face= 黑体>只需要在一个普通类的前面加一个 data,普通类就变成了数据类了,可以将它和 Java 的 JavaBean 做类比,如下:

Kotlin 泛型(上)

2021-01-17
阅读 2 分钟
1.9k
<font face= 黑体>在 Kotlin 集合的变换与聚合 中我们已经将 Kotlin 的 集合变换与聚合 讲完了,我们都知道集合源码中用到了很多泛型的知识,所以我们今天我们来讲 Kotlin 的 泛型。

Kotlin 集合的变换与聚合

2021-01-15
阅读 4 分钟
3.3k
<font face= 黑体>在 Kotlin 高阶函数与内联函数 中我们已经将 Kotlin 的 高阶函数 和 内联函数 讲完了,今天我们来讲 Kotlin 的 集合变换与聚合。

Kotlin 高阶函数与内联函数

2021-01-15
阅读 3 分钟
3.1k
<font face= 黑体>高阶函数就是参数类型包含函数类型或者返回值类型是函数类型的函数,简单的说,高阶函数就是函数里面套函数,如下所示:

Kotlin 表达式与运算符

2021-01-13
阅读 4 分钟
2.8k
一、前言<font face= 黑体>在 Kotlin 中的类与接口 和 Kotlin 空类型安全与智能类型转换 中我们已经将 Kotlin 中的类型初步讲完了,今天我们来讲 Kotlin中的表达式。二、分支表达式2.1、if else 表达式Kotlin: {代码...} <font face= 黑体>上面代码可以等价写成下面这种形式: {代码...} 2.2、when 表达式&l...

Kotlin 空类型安全与智能类型转换

2021-01-12
阅读 4 分钟
3.6k
<font face= 黑体>在 Kotlin 中的类与接口 中我们已经讲了 Kotlin 的 类、接口 和 扩展方法,今天我们来讲 Kotlin 中的 空类型安全 和 智能类型转换。

Kotlin 中的类与接口

2021-01-12
阅读 3 分钟
1.7k
一、前言<font face= 黑体>在 Kotlin 学习笔记之内置类型(1)和 Kotlin 学习笔记之内置类型(2)中我们已经讲了 Kotlin 内置类型中的基本类型、数组、区间、集合框架和函数。二、Kotlin 中的类和接口2.1、类的定义Java: {代码...} Kotlin:<font face= 黑体>默认是 public;<font face= 黑体>类内部无...

Kotlin 学习笔记之内置类型(2)

2021-01-12
阅读 5 分钟
2.5k
<font face= 黑体>在 Kotlin 学习笔记之内置类型(1) 中我们已经讲了 Kotlin 内置类型中的基本类型、数组和区间,今天我们来讲 Kotlin 的集合框架和函数。

Kotlin 学习笔记之内置类型(1)

2021-01-12
阅读 4 分钟
2.2k
一、基本类型1.1、与 Java 对比<font face= 黑体>我们来看一下 Kotlin 的基本类型与 Java 的区别,具体如下表所示: KotlinJava字节Bytebyte/Byte整型Int & Longint/Integer & long/Long浮点型Float & Doublefloat/Float & double/Double字符Charchar/Character字符串StringString1.2、声明变量1....

Android 利用ViewPager开发引导页并加入帧动画、属性动画和音乐播放

2020-11-19
阅读 15 分钟
2.7k
<font face=黑体>现在很多 App 都有引导页,今天我们就利用 ViewPager 来实现引导页,并且在引导页中加入帧动画、属性动画和音乐播放等功能。

Android 小功能之 TextView 只设置某些文字可点击

2020-11-13
阅读 2 分钟
2.2k
<font face=黑体>注释写的已经很详细了,其中tvLoginPrivacyPolicy是我需要设置对应地方有点击效果的TextView,具体代码实现如下所示:

Android 获取子 View 的位置及坐标的方式

2020-10-28
阅读 4 分钟
2.4k
<font face=黑体>视图 (View) 是一个容器,专门负责布局。表现为显示在屏幕上的各种视图,如 TextView、LinearLayout 等。

Android 子 View 的位置及坐标的获取方式详解

2020-10-27
阅读 4 分钟
2k
<font face=黑体>视图 (View) 是一个容器,专门负责布局。表现为显示在屏幕上的各种视图,如 TextView、LinearLayout 等。

Android ORM框架 GreenDao 的使用详解

2020-10-27
阅读 8 分钟
4.9k
<font face = 黑体>关于 Android 中常用的数据存储方式我们前面已经讲了 Sp 存储和文件存储,但是对于数据量比较大,并且结构复杂的数据我们想要存储只能通过数据库进行处理,Android 中提供了一个 SQLite 数据库,但是使用起来比较繁琐和复杂,所以 Android 又推出了 Room 持久性库,Room 持久性库在 SQLite 的基...

Android 外部存储与内部存储详解

2020-10-25
阅读 5 分钟
5.1k
<font face = 黑体>在 Android 本地数据存储之 SharePreferences 存储中,我们已经讲了 Sp 是如何保存数据的,并且也提供了一个 Sp 的工具类,今天我们来讲解一下 Android 中本地存储数据的另外一种方式——文件存储,文件存储又分为外部存储和内部存储。

Android 本地数据存储之 SharePreferences 存储

2020-10-19
阅读 7 分钟
3.8k
<font face = 黑体>数据的存储是我们在使用应用的过程中不可避免的操作,因为对于所有的应用而言我们主要的操作就是数据的读取与存储。

Android RecyclerView 使用详解

2020-10-13
阅读 8 分钟
10.1k
<font face = 黑体>可以这样说,RecyclerView 的问世,替代了 ListView 和 GridView。RecyclerView 异常的灵活、可自定义并可重复利用的 Item 、高度的解耦,并且通过设置不同的 LayoutManager、ItemDecoration 和 ItemAnimator 可以实现令人瞠目的效果。

Fragment 实现简易新闻界面(适配手机与Pad)

2020-10-13
阅读 8 分钟
4.6k
<font face = 黑体>Android 在 Android 3.0(API 级别 11)中引入了 Fragment,主要目的是为大屏幕(如平板电脑)上更加动态和灵活的界面设计提供支持。由于平板电脑的屏幕尺寸远胜于手机屏幕尺寸,因而有更多空间可供组合和交换界面组件。

利用接口实现 Fragment 与 Activity 的通信机制

2020-10-13
阅读 6 分钟
3.4k
为了重复使用 Fragment 界面组件,您应将每个组件构建为一个完全独立的模块化组件,定义它自己的布局和行为。定义这些可重用的 Fragment 后,您可以将它们与 Activity 相关联,并将其与应用逻辑相关联以实现整个复合界面。

Fragment 与 Activity 之间的通信

2020-10-13
阅读 6 分钟
4.2k
<font face = 黑体>在 Fragment 的创建、替换与移除 我们已经讲了 Fragment 的静态添加和动态添加,今天我们来讲 Fragment 的生命周期 和 Fragment 与 Activity 之间的通信。

Fragment 的创建、替换与移除

2020-10-13
阅读 5 分钟
5.2k
<font face = 黑体>Fragment 是从 Android 3.0 开始引入的,翻译过来就是碎片的意思。Fragment 的作用以及使用场景我就不赘述了。这篇博文我们就主要讲 Fragment 的创建、替换与移除这三个操作,至于 Fragment 的生命周期、如何与 Activity 进行通信等内容我们会在后面陆续讲到的。