详解Android官方架构中UseCase
1. UseCase 的用途 Android 最新的架构规范中,引入了 Domain Layer(译为领域层or网域层),建议大家使用 UseCase 来封装一些复杂的业务逻辑。 传统的 MVVM 架构中,我们习惯用 ViewModel 来承载业务逻辑,随着业务规模的扩大,ViewModel 变得越来越肥大,职责不清。 Clean Architecture 提出的关注点分离和单一职责(S
Android 2023年07月11日 126
1. UseCase 的用途 Android 最新的架构规范中,引入了 Domain Layer(译为领域层or网域层),建议大家使用 UseCase 来封装一些复杂的业务逻辑。 传统的 MVVM 架构中,我们习惯用 ViewModel 来承载业务逻辑,随着业务规模的扩大,ViewModel 变得越来越肥大,职责不清。 Clean Architecture 提出的关注点分离和单一职责(S
Android 2023年07月11日 126
引言 翻译自:towardsdev.com/mastering-e… Kotlin 作为现代的、强大的编程语言,可以给开发者提供诸多特性和工具,得以帮助我们编写更加高效、更具可读性的代码。 其中一个重要的特性便是 Enum 枚举,其本质上是一种数据类型:允许你定义一组用名称区分的常量。 本篇文章将通过代码案例带你探索 Kotlin 枚举的进阶用法,进而帮助大家理解如何将 Enum 更好地应
Android 2023年07月11日 117
简介 什么是动画呢?动画实际上就是不同的图片连续起来形成的。flutter为我们提供了一个AnimationController来对动画进行详尽的控制,不过直接是用AnimationController是比较复杂的,如果只是对一个widget的属性进行修改,可以做成动画吗? 答案是肯定的,一起来看看吧。 flutter中的动画widget 如果你只是希望动画展示widget的属性的变化
Android 2023年07月11日 116
正文 在Flutter中,我们可以使用dart语言中的DateTime类来获取本月的开始时间和结束时间。以下是示例代码: void getMonthStartEnd() { DateTime now = DateTime.now(); // 获取当前日期时间 DateTime monthStart = DateTime(now.year, now.month, 1); // 获取本
Android 2023年07月11日 139
Android Studio 手机投屏 当我们在线上做技术技术分享或者功能演示时,有时需要共享连接中的手机屏幕,通常我们会求助于 Vysor,Scrcpy 等工具。如果你是一个 Android Developer,那么现在有了更好的选择。 近期 Android Studio Electric Eel (电鳗)发布了 Release 版,这个版本开始引入了 Divice Mirroring 功能
Android 2023年07月11日 146
帧动画是通过连续播放图片来模拟动画效果,而补间动画开发者只需指定动画开始,以及动画结束"关键帧",而动画变化的"中间帧"则由系统计算并补齐! 1.补间动画的分类和Interpolator Andoird所支持的补间动画效果有如下这五种,或者说四种吧,第五种是前面几种的组合而已。 AlphaAnimation: 透明度渐变效果,创建时许指定开始以及结束透明度,还有动画的持续时间,透明
Android 2023年07月11日 135
在 Android 中,创建子线程的方式通常有以下几种: 使用 Thread 类进行创建 Thread 是 Java 中的一个类,可以通过继承 Thread 类或者创建 Thread 对象并传入 Runnable 对象来创建子线程。例如: // 继承 Thread 类 public class MyThread extends Thread { @Override pub
Android 2023年07月10日 151