Android开发系列(四)Jetpack Compose之Button

    在Jetpack Compose中,Button是一个常用的用户界面组件,用于执行某些操作或触发某些事件。Button控件是可触摸的,并且通常会显示一个文本或图标来表示其功能。

要在Jetpack Compose中创建一个Button,可以使用Button()函数,并通过参数指定按钮的文本、图标以及点击事件。

Button的函数声明如下。

@Composable
fun Button(onClick: () -> Unit,modifier: Modifier = Modifier,enabled: Boolean = true,shape: Shape = ButtonDefaults.shape,colors: ButtonColors = ButtonDefaults.buttonColors(),elevation: ButtonElevation? = ButtonDefaults.buttonElevation(),border: BorderStroke? = null,contentPadding: PaddingValues = ButtonDefaults.ContentPadding,interactionSource: MutableInteractionSource = remember { MutableInteractionSource() },content: @Composable RowScope.() -> Unit
) 

    下面通过简单的示例说明Button的使用方法。

Button的用法

    Button通常要包含Text用于显示文字内容,如下所示。

    Button最后的大括号包含Text,其实等价于   Button(onClick = {}, content = Text(text="按钮")),

最后一个参数为Lambda表达式,可以把它提取到括号外面,使用大括号包起来。

   上面示例用到的参数的作用如下。

enabled用于设置按钮是启用还是禁用状态,false表示禁用,此时无法点击该按钮。

border用于设置按钮的边框。

colors用于设置按钮的背景颜色及字体颜色,可以分别设置启用状态和禁用状态的颜色。

其它Button

    TextButton:这是一种只显示文字的按钮。此类按钮其实也可以使用Text实现,只需通过Modifier定义Text的点击处理函数即可。

    OutlinedButton:这个一种带边框的按钮。此类按钮也可以使用Button实现,只需把背景定义为白色,再定义边框即可得到同样的按钮。

   IconButton:图标按钮,此类按钮把Text换成了Icon,用于显示图标。

   以上是Button的常见用法,总体来讲还是比较简单。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/855160.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

shell学习记录

shell简介 参考博文1 参考博文2——shell语法及应用 参考博文3——vi的使用 在linux中有很多类型的shell,不同的shell具备不同的功能,shell还决定了脚本中函数的语法,Linux中默认的shell是 / b in/ b a s h ,流行的shell有as…

B-splines曲线的绘制(Matlab)

虽然在这个链接三次 Bspline(B样条曲线) NURBS曲线的绘制 matlab_三次b样条曲线的绘制-CSDN博客中我们介绍了NURBS曲线,然而有时候我们通过B-spline曲线也能够解决问题。B-spline曲线作为NURBS曲线的一种特例,这里给出均匀B-spline曲线的表达式&#xff…

基于IDEA的Maven简单工程创建及结构分析

目录 一、用 mvn 命令创建项目 二、用 IDEA 的方式来创建 Maven 项目。 (1)首先在 IDEA 下的 Maven 配置要已经确保完成。 (2)第二步去 new 一个 project (创建一个新工程) (3)…

论文精读——KAN

目录 1.研究背景 2.关键技术 2.1 原始公式 2.2 KAN结构 2.3 缩放定律 3.技术扩展 4.模型效果 5.相关讨论 6.总结 文章标题:《KAN: Kolmogorov–Arnold Networks》 文章地址: KAN: Kolmogorov-Arnold Networks (arxiv.org)https://arxiv.org/a…

再次递表港交所,慧算账能否把握AI+财税SaaS机遇?

5月以来,港股IPO市场日渐兴旺,多家公司实现上市首日“零破发”,平均收涨约30%,6月更是出现了超2500倍超购新股。市场赚钱效应显现,投资者打新随之热情高涨,越来越多国内企业也开始抓紧赴港上市。 近日&…

Android-app自动更新总结(已适配9-0)(1)

} //检查版本号,第一次请求(post),,,UpdateAppBean根据服务器返回生成 private void requestAppUpdate(int version, final DataRequestListener listener) { OkGo.post(Const.HOST_URL Const.UPDATEAPP).params(“version”, v…

vue element-ui 下拉框 以及 input 限制输入,小数点后保留两位 界面设计案例 和 例子:支持mp4和m3u8视频播放

vue input 限制输入,小数点后保留两位 以及 图片垂直居中显示 和 分享 git 小技巧-CSDN博客文章浏览阅读430次,点赞5次,收藏4次。error:Your local changes to the following files would be overwritten by merge:_error: your local change…

2024.6.18 作业 xyt

今日作业: 1. 完善对话框,点击登录对话框,如果账号和密码匹配,则弹出信息对话框,给出提示”登录成功“,提供一个Ok按钮,用户点击Ok后,关闭登录界面,跳转到其他界面 如果…

C++ 64 之 函数模版和普通函数调用规则

#include <iostream> #include <string> using namespace std;template<typename T> void myPrint(T a, T b){cout << "函数模板的调用" << endl; }void myPrint(int a, int b){cout << "普通函数调用" << endl…

C#——只读属性readonly

只读属性readonly 类的字段可以通过一个readonly(只读)表示这个为只读字段&#xff0c;不能被构造函数之外地方进行修改&#xff0c;静态只读字段不能在非静态的构造函数中使用 定义 只读属性的特点&#xff1a; 字段是只读的非静态 只能在非静态方法中进行修改 字段是只读的…

NoSQL-Tidis支持分布式事务,兼容redis协议,使用tikv存储引擎,可水平扩展

项目repo地址 GitHub - yongman/tidis: Distributed transactional NoSQL database, Redis protocol compatible using tikv as backend Tidis是分布式数据库,支持redis协议,多种数据结构支持,编写语言为golang。 Tidis工作角色类似于TIDB,提供协议转换和数据结构计算,底…

RockChip Android12 System之Datetime

一:概述 本文将针对Android12 Settings二级菜单System中Date&time的UI修改进行说明。 二:Date&Time 1、Activity packages/apps/Settings/AndroidManifest.xml <activityandroid:name="Settings$DateTimeSettingsActivity"android:label="@stri…

Unity基础(三)3D场景搭建

目录 简介: 一.下载新手资源 二.创建基本地形 三.添加场景细节 四,添加水 五,其他 六. 总结 简介: 在 Unity 中进行 3D 场景搭建是创建富有立体感和真实感的虚拟环境的关键步骤。 首先&#xff0c;需要导入各种 3D 模型资源&#xff0c;如建筑物、角色、道具等。这些模…

springboot与flowable(9):候选人组

act_id_xxx相关表存储了所有用户和组的数据。 一、维护用户信息 Autowiredprivate IdentityService identityService;/*** 维护用户*/Testvoid createUser() {User user identityService.newUser("zhangsan");user.setEmail("zhangsanqq.com");user.setF…

CHATGPT说这个运算放大器是比较器,我说这是运放典型的同相比例放大器,一个光控电路分析

纠正 图1 光控电路 该电路来自一个问题&#xff0c;链接见文末。 因GPT的分析有误&#xff0c;特此纠正。 引用图片和答案用于分析&#xff0c;如侵权请联系本人。 电路分析&#xff1a; 该电路为光控灯电路&#xff0c;灯光为LED发光二极管 D。 光敏电阻RG的阻值和光线强度关…

6.18作业

完善对话框&#xff0c;点击登录对话框&#xff0c;如果账号和密码匹配&#xff0c;则弹出信息对话框&#xff0c;给出提示”登录成功“&#xff0c;提供一个Ok按钮&#xff0c;用户点击Ok后&#xff0c;关闭登录界面&#xff0c;跳转到其他界面 如果账号和密码不匹配&#xf…

翻转数位00

题目链接 翻转数位 题目描述 注意点 可以将一个数位从0变为1找出能够获得的最长的一串1的长度&#xff08;必须是连续的&#xff09; 解答思路 参照题解使用动态规划解决本题&#xff0c;对于任意一个位置i&#xff0c;dp[i][0]表示到达且包含第i位不翻转0最长1的长度&…

思科配置路由器,四台主机互相ping通

一、如图配置 PC4和PC5用来配置路由器&#xff0c;各ip、接口如图所示。 二、配置各主机ip、子网掩码SNM、默认网关DGW (一)、PC0 (二)、PC1 (三)、PC2 (四)、PC3 三、 配置路由器Router0 (期间报错是打错了字母) Router>en Router#configure terminal Enter configurat…

软考阅卷将完成?!软考成绩有望六月底公布!

2024上半年软考考试已于5月25日-28日举行&#xff0c;考完试后大家最关心的事情莫过于查分了。 一、最新消息 1、不同地区在报名时对成绩公布的时间有所预示&#xff0c;但并没有一个统一的日期举个例子&#xff0c;江苏考区预计在6月下旬公布成绩&#xff0c;而黑龙江考区则预…

【Altium】Sheet Symbol器件页面符和对应原理图端口同步

【更多软件使用问题请点击亿道电子官方网站】 1、文档目标&#xff1a; 更给原理图端口后&#xff0c;如何同步到对应的sheet symbol 2、应用场景&#xff1a; 使用层次结构原理图设计的情况下&#xff0c;修改了某张原理图上的端口之后&#xff0c;其对应的sheet symbol上的…