Compose

2024/4/11 22:16:59

Docker【部署 04】Docker Compose下载安装及实例Milvus Docker compose(CPU)使用说明分享

Docker Compose 下载安装使用说明 1.Compose说明1.1 Overview of installing Docker Compose1.2 Installation scenarios1.2.1 Scenario one: Install Docker Desktop1.2.2 Scenario two: Install the Compose plugin1.2.3 Scenario three: Install the Compose standalone 2.C…

Compose | UI组件(五) | Button 按钮组件

文章目录 前言Button 是什么?Button的创建Button显示水平方向的UI IconButton是什么?IconButton是创建 FloatingActionButton是什么?FloatingActionButton创建 ExtendedFloatingActionButton是什么? 总结 前言 随着移动端的技术不…

魔改车钥匙实现远程控车:(4)基于compose和经典蓝牙编写一个控制APP

前言 这篇文章不出意外的话应该是魔改车钥匙系列的最后一篇了,自此我们的魔改计划除了最后的布线和安装外已经全部完成了。 不过由于布线以及安装不属于编程技术范围,且我也是第一次做,就不献丑继续写一篇文章了。 在前面的文章中&#xf…

Android compose 使用指纹验证

基于compose进行指纹验证 点击按钮进行验证 Button(onClick {var passed falseval biometic BiometricPrompt.Builder(applicationContext).setTitle("使用指纹解锁App").setSubtitle("证明你是手机的主人").setNegativeButton("取消验证",…

Compose UI 之 Buttons 按钮 IconButtons 图标按钮

Buttons 按钮 Android Compose UI 库中的 Button 和 IconButton 是两种常用的组件,它们各自具有一些独特的特点。 Button 的特点: 可点击性:Button 是一个可点击的组件,通常用于触发某个操作或事件。文本内容:Button 通常包含文本内容,用于描述按钮的功能或操作。自定义…

Jetpack Compose: Hello Android

Jetpack Compose 是一个现代化的工具包,用于使用声明式方法构建原生 Android UI。在本博文中,我们将深入了解一个基本的 “Hello Android” 示例,以帮助您开始使用 Jetpack Compose。我们将探讨所提供代码片段中使用的函数和注解。 入门 在…

docker 与 docker hub 镜像

目录1. docker 与 docker hub 镜像, docker-compose1.1. docker 镜像1.1.1. Debian1.1.2. CentOS/RHEL1.2. docker hub 镜像1.3. docker-compose1. docker 与 docker hub 镜像, docker-compose 1.1. docker 镜像 国内安装指南:https://mirrors.tuna.tsinghua.edu.…

Jetpack:026-Jetpack中的Slider

文章目录 1. 概念介绍2. 使用方法3. 代码与效果3.1 示例代码3.2 运行效果 4. 内容总结 我们在上一章回中介绍了Jetpack多点触控相关的内容,本章回中 主要介绍Slider。闲话休提,让我们一起Talk Android Jetpack吧! 1. 概念介绍 我们在本章回…

跟我一起使用 compose 做一个跨平台的黑白棋游戏(4)移植到compose-jb实现跨平台

前言 在上一篇文章中,我们已经实现了游戏的所有界面和逻辑代码,并且在 Android 上已经可以正常运行。 这篇文章我们将讲解如何将其从使用 jetpack compose 修改为使用 compose-jb 从而实现跨平台。 老规矩,先看效果图: 可以看到…

Compose | UI组件(八) | Dialog - 对话框

文章目录 前言Dialog 普通弹框Dialog 普通弹框的使用AlertDialog 警告弹框AlertDialog 警告弹框的使用 总结 前言 在我们传统的UI界面中,经常用到弹框,Compose也有弹框,但是Compose的弹框显示和隐藏和传统的弹框显示(show&#x…

Jetpack:015-Jetpack的是脚手架

文章目录 1. 概念介绍2. 使用方法2.1 核心思想2.2 具体内容 3. 示例代码4. 内容总结 我们在上一章回中介绍了Jetpack中小红点相关的内容,本章回中将介绍 脚手架。闲话休提,让我们一起Talk Android Jetpack吧! 1. 概念介绍 我们在本章回中介…

Jetpack:019-Jetpack的导航二(传递数据)

文章目录 1. 知识回顾2. 使用方法2.1 通过参数传递数据2.2 获取参数中的数据2.3 共享导航控制器 3. 示例代码4. 内容总结 我们在上一章回中介绍了Jetpack中导航相关的内容,本章回中 继续介绍导航相关的内容。闲话休提,让我们一起Talk Android Jetpack吧…

对于Android开发,我们为何要学Jetpack Compose?

概述 Jetpack Compose 是用于构建原生 Android 界面的新工具包。它可简化并加快 Android 上的界面开发,使用更少的代码、强大的工具和直观的 Kotlin API,快速让应用生动而精彩。Compose 使用全新的组件——可组合项 (Composable) 来布局界面&#xff0c…

JetPack系列:001-JetPack概要介绍

文章目录 1. 概念介绍2. 主要内容2.1 框架库2.2 UI界面库 3. 核心思想4. 内容总结 本章回是一起Talk AndroidJetpack吧专栏的第一章回,本章回中主要介绍JetPack的基本概念和编程思想,同时也会介绍它的基础知识。闲话休提,请我们一起Talk Andr…

docker-compose ELK

这里填写标题1. docker-compose ELK1.1. 简介1.2. docker-compose.yml1.3. troubleshooting1.4. docs1.5. other elk1. docker-compose ELK 1.1. 简介 ELK 是三个开源软件的缩写, 分别表示: Elasticsearch, Logstash, Kibana, 它们都是开源软件。新增了一个 FileBeat, 它是一…

Android笔记(八):基于CameraX库结合Compose和传统视图组件PreviewView实现照相机画面预览和照相功能

CameraX是JetPack库之一,通过CameraX可以向应用增加相机的功能。在下列内容中,将介绍一个结合CameraX实现一个简单的拍照应用。本应用必须采用Android SDK 34。并通过该简单示例,了解传统View层次组件的UI组件如何与Compose组件结合实现移动应…

安卓Compose(一)

为什么学习安卓Compose? 安卓Compose是一个相对新的UI工具包,它的出现为安卓应用程序开发带来了一系列的好处。下面是一些学习Compose的理由: 声明式UI 与传统的安卓XML布局相比,Compose使用了声明式的UI编程范例。这意味着你可以…

【代码】JetpackComposeKotlin分享Bitmap图片

目录 1. 发送函数2. 配置fileProvider3. bitmap保存本地的函数4. 全局变量5. 封装的ButtonIcon函数 Android12在jetpack compose中使用Kotlin代码分享Bitmap图片。 1. 发送函数 Composable fun Share() {val context LocalContext.currentButtonIcon(icon Icons.Rounded.Sha…

深入浅出 JetPack Compose UI 自动更新原理

作者:HELLO_WARD 为什么需要学习 Compose 的底层原理? 我想学习底层原理的主要原因是我对 Jetpack Compose 是如何运作的非常感兴趣。相对于传统的 View 系统,JetPack Compose 写起来相当神奇。具体来说,Composable 函数不会有返…

深入浅出 Compose Compiler(1) Kotlin Compiler KCP

前言 Compose 的语法简洁、代码效率非常高,这主要得益于 Compose Compiler 的一系列编译期魔法,帮开发者生成了很多样板代码。但编译期插桩也阻碍了我们对于 Compose 运行原理的认知,想要真正读懂 Compose 就必须先了解它的 Compiler。本系列…

Jetpack:014-Jetpack中的小红点

文章目录 1. 概念介绍2. 使用方法2.1 Badge2.2 BadgedBox 3. 示例代码4. 内容总结 我们在上一章回中介绍了Jetpack库中底部栏相关的内容,本章回中主要介绍 小红点。闲话休提,让我们一起Talk Android Jetpack吧! 1. 概念介绍 我们在本章回中…

Android笔记(九):Compose组件的状态(一)

在使用Compose定义UI界面时,可以发现界面的变换往往与Compose组件内部的状态相关,当状态值发生变化时,Compose构成的可组合的界面也会刷新发生相应的变化。将在本笔记中将对可组合项的状态的定义、状态提升、状态丢失和状态的保存进行简单介绍…

Compose也能开发iOS了,快来体验~

前言 在之前,我们已经体验了Compose for Desktop 与 Compose for Web,目前Compose for iOS 已经有尚未开放的实验性API,乐观估计今年年底将会发布Compose for iOS。同时Kotlin也表示将在2023年发布KMM的稳定版本。 届时Compose-jb KMM 将实…

Kotlin MutliPatform Demo NoteApp

简单用Kotlin实现个记录app,主要实现本地数据保存。支持多端运行 使用的库: voyagernapiercoroutinesktorserializationkotlinx-datetimekoinmultiplatform-settingssqldelightMVI 项目: MyNote

Android笔记(十五):JetPack Compose的附带效应(二)-produceState和derivedStateOf

在本笔记中,将结合实例介绍produceState和derivedStateOf两个可组合函数。它们分别实现状态的转换。 (1)produceState将非Compose状态转换虫Compose状态 (2)derivedStateOf将多个状态转换成其他状态。 一、produceSta…

深入了解 Jetpack Compose 中的 Modifier

Jetpack Compose 是 Android 中用于构建用户界面的现代化工具包。其中,Modifier 是一个非常重要的概念,它允许我们对 UI 组件进行各种样式和布局的调整。在本篇博客中,我们将深入了解 Modifier,以及如何在 Compose 中使用它。 什…

Jetpack:018-Jetpack中的导航一

文章目录 1. 概念介绍2. 使用方法2.1 基本概念2.2 传统用法2.3 新的用法 3. 示例代码4. 内容总结 我们在上一章回中介绍了Jetpack库中对话框相关的内容,本章回中主要介绍 导航。闲话休提,让我们一起Talk Android Jetpack吧! 1. 概念介绍 我…

Redux 源码解析(三): compose applyMiddleware API

Redux 源码解析(三): compose & applyMiddleware API 文章目录Redux 源码解析(三): compose & applyMiddleware API前言正文1. compose 源码解析1.1 方法签名1.2 源码实现2. applyMiddleware 源码解析2.1 类型定义2.2 方法签名2.3 源码实现结语其他资源参考连接阅读笔记…

全网最全Android compose开发应用指南

Jetpack Compose 是一款基于Kotlin API,重新定义Android布局的一套框架。它可简化并加快 Android 上的界面开发。使用更少的代码、强大的工具和直观的 Kotlin API,快速让应用生动而精彩。对于开发者而言最直观的就是节省开发时长,减少包体积&…

函数式编程 - 组合compose的使用方法

函数式编程中有一个比较重要的概念就是函数组合(compose),组合多个函数,同时返回一个新的函数。调用时,组合函数按顺序从右向左执行。右边函数调用后,返回的结果,作为左边函数的参数传入,严格保…

Compose | UI组件(十五) | Scaffold - 脚手架

文章目录 前言一、Scaffold脚手架简介二、Scaffold的主要组件三、如何使用Scaffold四、Compose中Scaffold脚手架的具体例子例子1:基本Scaffold布局例子2:带有Drawer的Scaffold布局例子3:带有Snackbar的Scaffold布局 总结 前言 Compose中的Sca…

compose LazyColumn + items没有自动刷新问题

val dataLists by remember { mutableStateOf(datas) } 数据更改后列表不刷新问题。 val dataLists by remember { mutableStateOf(datas) } LazyColumn(modifier Modifier.padding(top 5.dp)) {items(dataLists) {....}} 可以将mutableStateOf 改为mutableStateListOf解决…

MVVM下的Jetpack核心组件

前言 Jetpack 架构组件及 “标准化开发模式” 确立,意味着Android 开发已步入成熟阶段,只有对 MVVM 确有深入理解,才能自然而然写出标准化、规范化代码。 本次笔者会浅入浅出的介绍以下内容,由于它是一个我的学习总结记录&#…

Docker进阶 - 10. Docker Compose 简介

目录 1. Docker Compose 概述 2. Docker Compose 产生原因 3. Docker Compose 安装 4. Docker Compose 使用步骤 5. Docker Compose 常用命令 1. Docker Compose 概述 Compose 是Docker 公司推出的一个工具软件,可以管理多个Docker 容器组成一个应用。因此只需…

Jetpack Compose中使用Android View

使用AndroidView创建日历 Composable fun AndroidViewPage() {AndroidView(factory {CalendarView(it)},modifier Modifier.fillMaxWidth(),update {it.setOnDateChangeListener { view, year, month, day ->Toast.makeText(view.context, "${year}年${month 1}月$…

Android笔记(十一):Compose中使用ViewModel

通过ViewModel组件用于保存视图中需要的数据。ViewModel主要目的是将与用户界面相关的数据模型和应用程序的逻辑与负责实际显示和管理用户界面以及与操作系统交互的代码分离开来,为UI界面管理数据。常见的管理方式主要有:LiveData和StateFlow两种形式来实…

详解Jetpack Compose中的Modifier修饰符

前言 本文将会介绍Jetpack Compose中的Modifier。在谷歌官方文档中它的描述是这么一句话:Modifier元素是一个有序、不可变的集合,它可以往Jetpack Compose UI元素中添加修饰或者各种行为。例如,背景、填充和单击事件监听器装饰或添加行为到文…

【Android-Compose】手势检测实现按下、单击、双击、长按事件,以及避免频繁单击事件的简单方法

目录: 1 不需要双击事件 规避频繁单击事件2 需要双击事件(常规写法)3 后记:不建议使用上面的代码自定义按钮 1 不需要双击事件 规避频繁单击事件 var firstClickTime by remember { mutableStateOf(System.currentTimeMillis()…

Jetpack:010-Jetpack中的进度条

文章目录 1. 概念介绍2. 使用方法2.1 圆形进度条2.2 长条形进度条 3. 示例代码4. 内容总结 我们在上一章回中介绍了Kotlin中的lambda、匿名函数和闭包,本章回中主要介绍 进度条。闲话休提,让我们一起Talk Android Jetpack吧! 1. 概念介绍 进…

Jetpack:007-Kotlin中的Button

文章目录 1. 概念介绍2. 使用方法2.1 Button2.2 IconButton2.3 ElevatedButton2.4 OutlinedButton2.5 TextButton2.6 FloatingActionButton 3. 示例代码4. 内容总结 我们在上一章回中介绍了Jetpack中输入框相关的内容,本章回中将要介绍 Button。闲话休提&#xff0…

Jetpack:023-Jetpack中的事件二

文章目录 1. 知识回顾2. 使用方法2.1 单击事件2.2 双击事件2.3 长按事件2.4 滑动事件 3. 示例代码4. 内容总结 我们在上一章回中介绍了 Jetpack中事件相关的内容,本章回中继续介绍这方面的内容。闲话休提,让我们一起Talk Android Jetpack吧!…

Compose中Canvas绘制

Canvas绘制点 /*** Canvas绘制点*/ Composable fun DrawPointsTest() {val points arrayListOf(Offset(100f, 100f),Offset(300f, 300f),Offset(500f, 500f),Offset(700f, 700f),Offset(900f, 900f))Canvas(modifier Modifier.size(360.dp)) {drawPoints(points points,//类…

openEuler 22.03 LTS 安装 Docker CE 和 Dcoker Compose

openEuler 使用 DNF 安装 Docker CE 1024,节日快乐!回归正题,DNF 安装 DockerOS 系统环境准备安装 docker-ce 步骤1、更新系统2、安装必要的软件包3、添加 Docker CE 存储库4、更新索引缓存并安装 Docker CE5、启动 Docker 服务6、查看 Docke…

Jetpack:021-Jetpack中的滑动列表

文章目录 1. 概念介绍2. 使用方法2.1 函数参数2.2 列表成员 3. 示例代码4. 内容扩展5. 内容总结 我们在上一章回中介绍了Jetpack中底部导航栏相关的内容,本章回中主要介绍 滑动列表。闲话休提,让我们一起Talk Android Jetpack吧! 1. 概念介绍…

Compose中的Text组件

纵向布局为:Column 横向布局为:Row 设置内容 text属性设置内容。 设置权重 Modifier.weight(1.0f, true)权重设置,第一个参数 Float类型设置占比权重,第二个参数当为true时,元素将占据分配的整个宽度。 fontSize…

docker-compose 配置

这里写自定义目录标题1. docker-compose 配置1. docker-compose 配置 根据官方文档Compose file version 3 reference 中 docker-compose.yml 大致格式如下: version: "3" --> 指使用 docker-compose 的哪个版本,这里使用第 3 版,目前最…

Jetpack:005-文本组件的扩展

文章目录 1. 概念介绍2. 使用方法2.1 可以选择的文本2.2 可以点击的文本2.3 多种形式的文本 3. 示例代码4. 内容总结 我们在上一章回中介绍了Jetpack中文本组件的使用方法,本章回中主要介绍 文本组件的扩展。闲话休提,让我们一起Talk Android Jetpack吧…

Jetpack Compose中使用MD样式组件Scaffold及导航底部菜单的实现

Compose给我们提供了一个Material Design样式的首页组件(Scaffold),我们可以直接套用从而完成一个APP的首页界面 由于Scaffold中还包含有其他的组件,所以讲解Scaffold先讲解前置的一些组件 TopAppBar 首先,便是TopAppBar,其本质就是我们Android原生常见的Toolbar,不过其封装的…

Jetpack:011-Jetpack中标题栏

文章目录 1. 概念介绍2. 使用方法2.1 标题与导航2.2 详情菜单 3. 示例代码4. 内容总结 我们在上一章回中介绍了Jetpack中进度条相关的内容,本章回中主要介绍 标题栏。闲话休提,让我们一起Talk Android Jetpack吧! 1. 概念介绍 我们在本章回…

Android Jetpack Compose总结

简介 Jetpack Compose 是用于构建native UI的新方式,写法跟Flutter非常相似,对Flutter有了解的同学可以很快上手。 官网:https://developer.android.com/jetpack/compose 官方demo :https://github.com/android/compose-samples …

灵魂组件Lifecycle的生命周期机制详解

作者:苏火火 前言 在早期 Andorid 架构中,生命周期的事件监听和状态查询,我们需要自定义一套提供侦测功能的 Activity/Fragment 基类及回调接口,在 Activity/Fragment 的生命周期方法中实现依赖组件的操作,在外部进行…

Jetpack:013-Jetpack底部导航栏

文章目录 1. 概念介绍2. 使用方法2.1 NavigationBar2.2 NavigationBarItem 3. 示例代码3.1 代码和注释3.2 代码难点3.3 运行效果 4. 内容总结 我们在上一章回中介绍了Jetpack中弹出菜单相关的内容,本章回中将介绍 底部导航栏。闲话休提,让我们一起Talk …

Jetpack:028-Jetpack中的Card

文章目录 1. 概念介绍2. 使用方法2.1 主要类型2.2 其它类型 3. 示例代码4. 内容总结 我们在上一章回中介绍了Jetpack中Switch相关的内容,本章回中 主要介绍Card。闲话休提,让我们一起Talk Android Jetpack吧! 1. 概念介绍 我们在本章回中介…

Jetpack:020-Jetpack导航示例:底部导航栏

文章目录 1. 概念介绍2. 使用方法3. 代码与分析3.1 示例代码3.2 代码分析 4. 内容总结 我们在上一章回中介绍了Jetpack中导航相关的内容,本章回中主要介绍 导航的综合示例:底部导航栏。闲话休提,让我们一起Talk Android Jetpack吧&#xff0…

Compose | UI组件(十一) | Spacer - 留白

文章目录 前言Spacer组件的参数说明Spacer组件的使用 总结 前言 Spacer组件是让两组件之间留有空白间隔 Spacer组件的参数说明 Spacer只有一个修饰符,修饰留空白的大小和比例,颜色 Spacer(modifier: Modifier)Spacer组件的使用 Row {Box(modifier M…

Android笔记(十二):结合Compose实现Handler机制处理多线程的通信

在Android应用中常常结合多线程处理多个任务。不可避免,多个线程之间需要数据通信。Hanlder消息处理机制是异步处理的方式之一。通过Handler机制可以实现在不同的线程之间的通信。 一、主线程和工作线程 1.主线程 一个Android的移动应用启动时会单独启动一个进程…

Compose | UI组件(一) | Modifier修饰符

文章目录 Modifier修饰符-简介Modifier修饰符 - sizeModifier修饰符 - backgroundModifier修饰符 - fillMaxSizeModifier修饰符 - border 和 paddingModifier修饰符 - offset 总结 Modifier修饰符-简介 Modifier通过链式调用方式为所有Compose组件设置样式(大小&am…

Compose | UI组件(三) | TextField() 输入框组件

文章目录 TextField() 简介TextField() 输入框例子TextField() 输入框添加装饰OutlinedTextField 边框样式输入框BasicTextField 输入框组件 总结 TextField() 简介 在 Compose 中,TextField() 组件表示文本输入框 ExperimentalMaterial3Api Composable fun TextF…

Compose | UI组件(六) | 选择框

文章目录 前言Checkbox 复选框的含义Checkbox 复选框的使用Switch 单选框的含义Switch 单选框的使用Slider 滑竿组件的含义Slider 滑竿组件的使用 总结 前言 随着移动端的技术不断更新迭代,Compose也运用的越来越广泛,很多人都开始学习Compose 本文主要…

Kotlin 协程的基本概念及用法

协程是什么? 协程是一种编程思想,并不局限于特定的语言。除 Kotlin 以外,其他的一些语言,如 Go、Python 等都可以在语言层面上实现协程。 Kotlin Coroutine 本质上是 Kotlin 官方提供的一套线程封装 API,其设计初衷是…

跟我一起使用 compose 做一个跨平台的黑白棋游戏(1)整体实现思路

前言 为什么写这系列文章 虽然 compose 正式版已经出来很久了,也有很多大佬写了很多教程文章和实例 demo ,但是对于 compose 其实我也还是一知半解的。 特别是对于 compose 的状态管理,由于 compose 声明式的特性,如果不对状态…

Jetpack Compose中的列表控件LazyRow和LazyColumn详解

背景 如果你需要显示大量的条目(或一个未知长度的列表),使用像 Column 这样的布局会导致性能问题,因为所有的条目都会被组合和布局,无论它们是否可见。那么,在Compose中有没有像RecycleView的控件可以滑动…

Jetpack Compose中的附带效应简介及使用

前言 附带效应是指LaunchedEffect、DisposableEffect、rememberCoroutineScope、rememberUpdatedState、produceState 、derivedStateOf的使用。附带效应这4个字在google官方文档上的表达与解释挺让人难以理解的。其实个人认为准确的描述应该是外部产生的数据向Compose状态作用…

给 compose draw 绘制的非规则图形添加点击监听

前言 导言 在之前的两篇文章中,我们从实例出发,以实践的方式简单介绍了 compose 自定义绘制(如何自己绘制想要的控件)、为自定义绘制增加动画(让控件动起来)。 在这篇文章中,我们依然从实例出…

跟我一起使用 compose 做一个跨平台的黑白棋游戏(2)界面布局

前言 在上一篇文章中,我们讲解了实现这个游戏的总体思路,这篇文章我们将讲解如何实现游戏界面。 本文将涉及到 compose 的自定义绘制与触摸处理,这些内容都可以在我往期的文章中找到对应的教程,如果对这部分内容不太熟悉的话&am…

Jetpack Compose 中下拉框实现

下拉菜单主要 以下三种实现: ExperimentalMaterialApi Composable fun ExposedDropdownMenuBox(expanded: Boolean,onExpandedChange: (Boolean) -> Unit,modifier: Modifier Modifier,content: Composable ExposedDropdownMenuBoxScope.() -> Unit )实现代…

47. Compose自定义绘制日历-1

有个日历的需求, 自己实现一下简单的 生成数据 private fun initData() {val listOfCalendar mutableListOf<CalendarData>()val calendar Calendar.getInstance()val todayYear calendar.get(Calendar.YEAR)val todayMonth calendar.get(Calendar.MONTH)val today…

Compose LazyColumn 对比 RecyclerView ,谁的性能更好?

LazyColumn 是 compose 中用来实现类似 RecyclerView 效果的控件 &#xff0c;但是大家都说LazyColumn性能比RecyclerView差太多&#xff0c;毕竟 RecyclerView google优化了十多年了&#xff0c;比RecyclerView差一点也正常&#xff0c;今天我们就用实际数据来对比LazyColumn和…

一个小时入门 Android Compose 动画

0. 前言 前段时间对于Android中的Compose动画做了系统性的学习&#xff0c;相关文章发布在 Compose 动画 专栏里。系统性学完Compose动画后&#xff0c;又对此做了系统性的回顾&#xff0c;抽取其比较重要的部分&#xff0c;希望能帮助大家快速入门Compose动画&#xff0c;所…

Jetpack:007-各种各样的Button

文章目录 1. 概念介绍2. 使用方法2.1 Button2.2 IconButton2.3 ElevatedButton2.4 OutlinedButton2.5 TextButton2.6 FloatingActionButton 3. 示例代码4. 内容总结 我们在上一章回中介绍了Jetpack中输入框相关的内容&#xff0c;本章回中将要介绍 Button。闲话休提&#xff0…

Jetpack:012-Jetpack中的弹出菜单

文章目录 1. 概念介绍2. 使用方法2.1 DropdownMenu2.2 DropdownMenuItem 3. 示例代码3.1 代码和注释3.2 代码难点3.3 运行效果 4. 内容总结 我们在上一章回中介绍了Jetpack中标题栏相关的内容&#xff0c;本章回中主要 弹出菜单。闲话休提&#xff0c;让我们一起Talk Android …

Compose中的一些机制验证与总结——remember

最近在搞一个基于 Compose 实现的低代码跨平台项目&#xff0c;涉及到一些 Compose 运行时的一些机制问题&#xff0c;周末写了个 demo 验证总结一下&#xff0c;总体是与过往经验相符的&#xff0c;也发现了一些小的细节是以前不太清楚的&#xff0c;可以一起学习研究一下&…

Jetpack Compose | State状态管理及界面刷新

我们知道Jetpack Compose&#xff08;以下简称Compose&#xff09;中的 UI 可组合项是通过Composable 声明的函数来描述的&#xff0c;如&#xff1a; Composable fun Greeting() {Text(text "init",color Color.Red,modifier Modifier.fillMaxWidth()) }上面的代…

Compose | UI组件(十) | Box,Surface - 帧布局

文章目录 前言Box 组件的参数说明Box 组件的使用Surface 的参数说明Surface 的使用 总结 前言 Box组件是 按子组件依次叠加 的布局组件&#xff0c;相当传统View中的 FrameLayout Box 组件的参数说明 Composable inline fun Box(modifier: Modifier Modifier, …

Compose | UI组件(九) | Column,Row - 线性布局

文章目录 前言Column 的含义Column 的使用给 Column 加边框Column 使用 verticalArrangement 定位子项位置Column 使用 horizontalAlignment 定位子组件位置Column 设置了大小&#xff0c;可使用Modifier.align修饰符设置子组件对齐方式 Row 的含义Row 的使用 总结 前言 传统的…

Compose | UI组件(四) | Icon(),Image() 图标和图片组件

文章目录 Icon 图标组件简介Icon 图标组件例子 Image 图片组件简介Image 图片组件例子colorFilter 实现不同效果 总结 Icon 图标组件简介 显示一系列图标 Composable fun Icon(imageVector: ImageVector, //矢量图,可以显示SVG格式的图标contentDescription: …

docker-compose.yml配置文件参数

1. image services:web:image: bitnami/mysql:5.7在 services 标签下的第二级标签是 web&#xff0c;这个名字是用户自己自定义&#xff0c;它就是服务名称。 image 则是指定服务的镜像名称或镜像 ID。如果镜像在本地不存在&#xff0c;Compose 将会尝试拉取这个镜像。 2. env…

详解Jetpack Compose的标准布局

前言 Compose是一个声明式UI系统&#xff0c;其中&#xff0c;我们用一组函数来声明UI&#xff0c;并且一个Compose函数可以嵌套另一个Compose函数&#xff0c;并以树的结构来构造所需要的UI。 在Compose中&#xff0c;我们称该树为UI 图&#xff0c;当UI需要改变的时候会刷新…

《Jetpack Compose入门到精通》,拥抱全新Android UI 开发框架

历时两年&#xff0c;2021年7月29日 Jetpack Compose 正式版终于问世。对于 Jetpack Compose &#xff0c;相信有很多同学会有很多疑惑的地方。 Jetpack Compose 有学习的必要吗&#xff1f;Jetpack Compose 存在哪些特点和优势&#xff1f;与传统UI相比&#xff0c;Jetpack C…

Compose 为什么可以跨平台?

这是我在 2022 Kotlin 中文开发者大会 中带来的一个分享&#xff0c;会后有网友反馈希望将 PPT 内容整理成文字方便阅读&#xff0c;所以就有了本篇文章。大家如果要了解本次大会更多精彩内容&#xff0c;也可以去 JetBrains 官方视频号查看大会的直播回放。 前言 Compose 不止…

Docker学习5 - network容器网络、compose容器编排、简单Demo演示Redis、MySQL、SpringBoot项目编排部署

文章目录容器网络-network概念网络模式bridge-docker0网桥 - 使用虚拟的IP、端口概念案例讲解host - 使用物理机的IP、端口概念案例none - 很少用概念案例container - 利用其他运行中容器的虚拟网卡信息概念案例自定义网络 - 用于划分某几个容器共处一个网络方便管理桥接模式案…

Android Jetpack Compose之生命周期与副作用

文章目录 1.概述2.Composeable生命周期3.Compose副作用及API3.1.Compose副作用API3.1.1 DisposableEffect3.1.2 SideEffect 3.2 Compose异步处理副作用API3.2.1 LaunchedEffect3.2.2 rememberCoroutineScope3.2.3 rememberUpdateState3.2.4 snapshotFlow 3.3 状态创建副作用API…

Android笔记(十八):面向Compose组件结合Retrofit2和Rxjava3实现网络访问

一、Retrofit2 Square公司推出的Retrofit2库&#xff08;https://square.github.io/retrofit/&#xff09;&#xff0c;改变了网络访问的方式。它实现了网络请求的封装。Retrofit库采用回调处理方式&#xff0c;使得通过接口提交请求和相应的参数的配置&#xff0c;就可以获得…

Android Jetpack Compose基础之生命周期-重组

Android Jetpack Compose基础之生命周期-重组 Composable生命周期简介重组Composable如何确定重组的最小范围&#xff1f;示例为什么结果是这样呢&#xff1f;其底层原理&#xff1f;日志顺序分析如果我们将Column替换为非内联函数CardstateChangeComposable内部增加如下代码点…

Android Compose Bloom 项目实战 (五) : 使用Navigation实现页面跳转

1. 前言 上几篇文章 我们分别实现了 Compose Bloom项目的各个页面&#xff0c;包括欢迎页、登录页和主页&#xff0c;但是各个页面都是单独独立的&#xff0c;并没有关联页面跳转&#xff0c;而本篇文章的任务就是实现各个页面见的跳转。 2. Navigation 要实现页面跳转&#…

kotlin Kmp多平台模板生成

地址: Kotlin Multiplatform Wizard | JetBrains 可生成kotlin多个平台模板 https://terrakok.github.io/Compose-Multiplatform-Wizard/

Compose入门

​ 本篇文章主要是为了对Compose有一个初步了解。知道Compose是做什么的&#xff0c;用Compose能干什么&#xff0c;在目前的各种UI框架下面有些优势&#xff0c;参考Google官网的解释加上一些自己的理解生成的一篇文章。本人也是Compose初学者&#xff0c;通过每一步学习遇到哪…

Compose | UI组件(十四) | Navigation-Data - 页面导航传递数据

文章目录 前言传参流程实例说明普通方式传值定义接受参数格式定义接受参数类型获取参数传入参数传参和接受参数效果图 结合 ViewModel 传递参数定义ViewModel在 navigation 定义 ViewModel 实例&#xff0c;并且传入 LoginScreen传入输入框中的值&#xff0c;并且跳转传值获取值…

Compose中快捷监听软键盘收起弹出状态方法(兼容Android各个版本)

Compose中快捷监听软键盘收起弹出状态方法 非compose方法监听软键盘收起在compose中监听软键盘收起状态 非compose方法监听软键盘收起 在我们开发compose项目之前就有很多获取软键盘状态的方法&#xff0c;比如如下法1&#xff1a; fun getImeVisible(activity: Activity, cal…

Jetpack系列-ViewModel的使用及原理浅析

作者&#xff1a;碎星 简介 ViewModel在架构中用于承载业务逻辑和作为容器保存屏幕状态&#xff0c;它可以缓存界面的状态&#xff0c;并且能在配置变更后持久保留相应的界面状态。 在jetpack套件中&#xff0c;ViewModel随lifecycle一起提供。 优势 简介 ViewModel在架构…

使用Android Compose实现网格列表滑到底部的提示信息展示

文章目录 概述1 效果对比1.1 使用添加Item的办法&#xff1a;1.2 使用自定义的方法 2. 效果实现2.1 列表为空时的提示页面实现2.2 添加Item的方式代码实现2.3 使用自定义的方式实现 3. UI工具类 概述 目前大多数的APP都会使用列表的方式来呈现内容&#xff0c;例如淘宝&#x…

阿里云 ECS Docker、Docker Compose安装

https://help.aliyun.com/document_detail/51853.html https://docs.docker.com/compose/install/ Centos https://blog.csdn.net/Alen_xiaoxin/article/details/104850553 systemctl enable dockerdocker-compose安装 https://blog.csdn.net/qq465084127/article/details/…

Docker Compose常用命令

常用命令 1.1 restart, start, stop-- 启动和停止服务 命令必须在 docker-compose.yml文件所在的目录下执行。 # 前台启动, 启动项目中的所有服务。 $. docker-compose up# 后台启动, 启动所有服务并在后台运行。 $. docker-compose up -d# 停止所有服务。 $. docker-compose …

Jetpack:025-Jetpack中的多点触控事件

文章目录 1. 概念介绍2. 使用方法2.1 缩放事件2.2 旋转事件2.3 平移事件2.4 综合事件 3. 示例代码4. 内容总结 我们在上一章回中介绍了Jetpack中滚动事件相关的内容&#xff0c;本章回中主要介绍 多点解控事件。闲话休提&#xff0c;让我们一起Talk Android Jetpack吧&#xf…

Compose UI 之 BottomAppBar 底部应用栏

BottomAppBar 底部应用栏 BottomAppBar 是一个在 Jetpack Compose 中用于创建底部应用栏的组件。它提供了一个高度可定制且功能丰富的底部导航解决方案。 它的使用方式与 TopAppBar 类似。下面的图是 BottomAppBar 的基本样式图。 常见使用场景 BottomAppBar 在应用中常用于…

Android---Jetpack Compose学习006

1. 点击 clickable 修饰符允许应用检测对已应用该修饰符的元素的点击。 示例&#xff1a;点击控件&#xff0c;使得内容发生改变 class MainActivity : ComponentActivity() {override fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)setCo…

继续深挖,Jetpack Compose的State快照系统

Jetpack Compose 有一种特殊的方式来表示状态和传播状态变化&#xff0c;从而驱动最终的响应式体验&#xff1a;状态快照系统&#xff08;State snapshot system&#xff09;。这种响应式模型使我们的代码更加强大和简洁&#xff0c;因为它允许组件根据它们的输入自动重组&…

从0开始搭建一个APP:compose搬砖的一天

无论是从各个大佬的书籍还是blog,大的方向还是翻了一遍&#xff0c;个人感觉&#xff0c;compose 是UI解决方案这种定义和Android离得特别远&#xff0c;像Android 的应用端的大多数工作量还是在UI开发上&#xff0c;flutter 也差不多&#xff0c;结合Kotlin的开发经验&#xf…

Android Jetpack Compose之UI的重组和自动刷新

文章目录 1.概述2.Compose智能重组3.避免掉入重组的“坑”3.1 Composable函数的执行顺序不固定3.2 Composable 会并发执行3.3 Composable会反复的执行3.4.Composable的执行时“乐观”的 4 总结 1.概述 我们都知道&#xff0c;在传统的View中&#xff0c;若要改变UI&#xff0c…

设计图转Compose代码,Relay帮你轻松搞定

作者&#xff1a;黄林晴 前言 相信很多人看到本次分享分题目&#xff0c;第一反应都和我一样&#xff1a;Relay是什么&#xff1f;有什么用&#xff1f;和Compose有什么关系&#xff1f;不要着急&#xff0c;看完这篇文章&#xff0c;这些你都会了解。 Relay是什么 官方一点…

Android Jetpack Compose之底部导航栏的实现

目录 1.概述2. 效果展示3. 代码实现3.1 定义底部导航栏的tab项3.2 整体页面架构搭建3.3 底部导航栏的实现3.4 所有代码 4.总结 1.概述 写过一段Android jetpack compose 界面的小伙伴应该都用过Compose的脚手架Scaffold&#xff0c;利用它我们可以很快的实现一个现代APP的主流…

Jetpack:030-Jetpack中的状态

文章目录 1. 概念介绍2. 使用方法2.1 可监听对象2.2 获取状态值2.3 修改状态值2.4 重组函数 3. 示例代码4. 内容总结 我们在上一章回中介绍了Jetpack中网格布局相关的内容&#xff0c;本章回中主要 介绍状态。闲话休提&#xff0c;让我们一起Talk Android Jetpack吧&#xff0…

Compose | UI组件(十二) | Lazy Layout - 列表

文章目录 前言LazyListScope作用域 用来干什么&#xff1f;LazyColumn组件含义&#xff1f;LazyColumn的基本使用LazyColumn Padding设置边距LazyColumn 设置边距 (contentPadding)LazyColumn 为每个子项设置边距 (Arrangement.spacedBy())LazyColumn 根据 rememberLazyListSta…

CentOS系统环境搭建(二十)——CentOS7安装chat GPT进阶

centos系统环境搭建专栏&#x1f517;点击跳转 CentOS7安装chat GPT进阶 Welcome to the AI era! 基于上一篇文章CentOS系统环境搭建&#xff08;十九&#xff09;——CentOS7安装chat GPT&#xff0c;我们用docker20安装了chatGPT。但&#xff0c;总感觉不够好。 使用dock…

Jetpack:002-页面与布局

文章目录 1. 概念介绍2. 使用方法2.1 页面2.2 布局 3. 示例代码4. 内容总结 我们在上一章回中介绍了Jetpack相关的概念和主要内容&#xff0c;本章回中主要介绍 页面和布局。闲话休提&#xff0c;请我们一起Talk Android Jetpack吧 1. 概念介绍 我们在本章回中介绍的页面是指…

如何在Jetpack Compose中显示PDF?

当读取和显示 PDF 的组件缺失时该怎么办? 声明式编程可以拯救你. Jetpack Compose已经存在好几年了, 但_在某些方面它的使用仍然面临挑战_. 例如, 缺少用于查看PDF的官方组件, 而为数不多的第三方库通常也是有代价的. 在我们的应用中, 我们会遇到在许多场景中显示 PDF 的需求…

Compose 动画 (三) : AnimatedVisibility 从入门到深入

1. AnimatedVisibility 是什么 AnimatedVisibility可以实现Compose组件的显示和隐藏&#xff0c;并且可以指定显示/隐藏时候的动画效果。(EnterTransition/ExitTransition) 和 animateXxxAsState、animateContentSize、Crossfade、AnimatedContent 这几个API一起&#xff0c;都…

Compose竖向列表LazyColumn

基础列表一 LazyColumn组件中用items加载数据&#xff0c;rememberLazyListState()结合rememberCoroutineScope()实现返回顶部。 /*** 基础列表一*/ Composable fun Items() {Box(modifier Modifier.fillMaxSize()) {val context LocalContext.currentval dataList arrayLi…

Compose | UI组件(十三) | Navigation - 页面导航

文章目录 前言Navaigation 的核心概念和组件的更详细说明真实案例带你一步一步了解 Navaigation第一步&#xff0c;新建多个页面第二步&#xff0c;新建一个Activity第三步&#xff0c;新建一个Screen类&#xff0c;用于统一管理导航的常量第四步&#xff0c;新建一个Graph 统一…

CentOS系统环境搭建(三)——Centos7安装DockerDocker Compose

centos系统环境搭建专栏&#x1f517;点击跳转 Centos7安装Docker&Docker Compose 使用 yum 安装Docker 内核 [rootVM-4-17-centos ~]# uname -r 3.10.0-1160.88.1.el7.x86_64Docker 要求 CentOS 系统的内核版本高于 3.10 更新 yum yum update安装需要的软件包&#x…

【Android】自定义View组件,并实现在 Compose、Kotlin、Xml 中调用

从事 Android 开发以来&#xff0c;很少有过自定义 View 的相关开发需求&#xff0c;大部分 UI 都是可以集成某些官方组件&#xff0c;在组件的基础上完成能够大大缩短开发时间。但今天我要讲的是&#xff1a;如何使用 Android 开发一个Compose、Xml都可以调用的组件&#xff1…