当前位置: 首页 > news >正文

网站建设合同书相关附件宝安沙井邮政编码

网站建设合同书相关附件,宝安沙井邮政编码,濮阳网站设计,央视优购物官方网站概述 按钮组件Button是用户和系统交互的重要组件之一,它按照Material Design风格实现,我们先看下Button的参数列表,通过参数列表了解下Button的整体功能 Composable fun Button(onClick: () -> Unit, // 点击按钮时的回调modifier: Modi…

概述

按钮组件Button是用户和系统交互的重要组件之一,它按照Material Design风格实现,我们先看下Button的参数列表,通过参数列表了解下Button的整体功能

@Composable
fun Button(onClick: () -> Unit, // 点击按钮时的回调modifier: Modifier = Modifier, // 修饰符enabled: Boolean = true, // 是否启用按钮interactionSource: MutableInteractionSource = remember { MutableInteractionSource() },elevation: ButtonElevation? = ButtonDefaults.elevation(), // 按钮的阴影shape: Shape = MaterialTheme.shapes.small, border: BorderStroke? = null,colors: ButtonColors = ButtonDefaults.buttonColors(),contentPadding: PaddingValues = ButtonDefaults.ContentPadding,content: @Composable RowScope.() -> Unit
)

Button组件的第一个参数onClick是必填项,这是按钮组件最重要的功能,通过回调响应用户的点击事件,最后一个参数content也是必填项,展示按钮的内容。Compose 的Button组件默认没有任何UI,它仅仅是一个响应onClick的容器,它的UI需要在content中通过其他组件实现

1.普通Button按钮

假设我们需要创建一个显示文字的Button,代码如下:

  @Composablefun ButtonDemo(){Button(onClick = { /*TODO*/ }) {Text(text = "OK")}}

运行结果:
在这里插入图片描述
假如我们想在按钮文字的左边加一个图标,代码如下

@Composablefun ButtonIconDemo(){Button(onClick = { /*TODO*/ }) {Icon(imageVector = Icons.Filled.Done, contentDescription = null,modifier = Modifier.size(ButtonDefaults.IconSize))Spacer(modifier = Modifier.size(ButtonDefaults.IconSpacing))Text(text = "OK")}}

这样就在文字“OK”的左边加了一个打勾的图标了
运行结果:
在这里插入图片描述
在传统的Button中,有一个很好用的功能,就是selector,即点击按钮的时候,可以自定义按钮的点击效果,在Compose中当然也可以,Button中的参数interactionSource就是做这个事情的。interactionSource通过以下的桑格函数获取当前组件的状态的:

interactionSource.collectIsPressedAsState(): 判断是否是按下状态
interactionSource.collectIsFocusedAsState():判断是否是获取焦点的状态
interactionSource.collectIsDraggedAsState():判断是否拖动

我们可以通过实例来看下如何使用interacrtionSource来实现类似传统button的selector效果,代码如下:

    @Composablefun InteractionButtonDemo(){val interact = remember {MutableInteractionSource()}val pressState = interact.collectIsPressedAsState()val borderColor = if(pressState.value) Color.Green else Color.RedButton(onClick = { /*TODO*/ },border = BorderStroke(2.dp, color = borderColor),interactionSource = interact) {Text(text = "Long click")}}

上面的代码实现的是按钮在通常情况下边框为红色,点击的时候边框为绿色
运行结果:
在这里插入图片描述
在这里插入图片描述
Button 并非唯一的可点击组件,理论上任何Compose组件都可以通过Modifier.clickable修饰符制作成可点击组件,而当Button被点击的时候,需要额外进行一些事件响应处理,比如水波纹的处理,Button 的onClick在底层是通过覆盖Modifier.clickable实现的,所以我们使用button时不要为Button覆盖Modifier.clickable.

2.IconButton图标按钮

IconButton组件实际上只是Button组件的简单封装,它就是一个可以点击的图标,它一般用于应用栏中的导航或者其他的行为,我们需要在IconButton组件里面提供一个图标组件,这个图标组件的尺寸一般是24x24dp,看下面的例子:

   @Composablefun IconButtonDemo(){IconButton(onClick = { /*TODO*/ }) {Icon(imageVector = Icons.Filled.Favorite,contentDescription = null)}}

运行结果
在这里插入图片描述
简单例子,不多讲解

3.FloatingActionButton悬浮按钮

FloatingActionButton悬浮按钮代表当前页面的主要行为,它也需要我们提供一个Icon组件,代码如下:

    @Composablefun FloatButtonDemo(){FloatingActionButton(onClick = { /*TODO*/ }) {Icon(imageVector = Icons.Filled.ArrowBack, contentDescription = null)}}

运行结果:
在这里插入图片描述
悬浮按钮其实还有一个带文字的扩展悬浮按钮ExtendedFloatingActionButton组件,使用方法如下:

   @Composablefun ExtFloatButtonDemo(){ExtendedFloatingActionButton(icon = {Icon(imageVector = Icons.Filled.Favorite, contentDescription = null ) },text = { Text(text = "我喜欢的") },onClick = { /*TODO*/ })}

运行结果:
在这里插入图片描述

总结

以上就是今天的内容,本文主要介绍了按钮组件的使用,以及图标按钮和悬浮按钮,这些按钮在开发中调试和实现实际的需求都很有用,建议读者多做练习。慢慢使用到自己的项目当中去

http://www.yayakq.cn/news/345126/

相关文章:

  • 做网站游戏的网站有哪些建设商城网站的
  • 网站建设排名的公司哪家好凡科快图是免费的吗
  • 两学一做注册网站一级a做爰免费网站
  • 做网站的软件 简单易学网址模版
  • 水果门户网站建设无锡百姓网免费发布信息网
  • 怎么用asp.net做网站中国建设银行金华分行网站
  • 网站设计这个专业怎么样建设部网站注册师
  • 怎样给网站做后台七星彩网投网站建设
  • php做网站如何做一个网页项目
  • 建设网站的意义怎么查看网站有没有备案
  • 清远做网站东莞定制建站网站推广公司
  • 太原论坛网站开发公司深圳做兼职的网站
  • led网站免费模板中国人做外贸网站都卖什么手续
  • 昆明hph网站建设wordpress轮播设置
  • 建设银行光明支行网站网络推广与传统推广的区别
  • 企业大型网站建设要多少钱1元1年xyz域名
  • 网站建设初步规划书网站开发工程师和软件工程
  • 想开个网站怎样开公司南京做网站的额
  • 化妆品电子商务网站建设策划书深圳福田区有哪些大公司
  • 做羞羞的事的视频网站手机网站建设西安
  • 淘宝做首页热点的什么网站建设行官方网站
  • 百度怎么收录网站桂林市临桂区城乡建设局网站
  • 四川建设部官方网站芜湖公司企业排名
  • 外贸企业网站评价案例网站设计怎么用黑色
  • 网站建设代理都有哪些企查查企业信息查询免费
  • 网页制作费用明细北京seo网站
  • 南宁国贸网站建设wordpress 电子书模板
  • 深圳生产型企业网站建设国外企业网站怎么做
  • 学生网站作品建设一个网站主要受哪些因素的影响
  • 李可做的网站迅雷下载宝 做网站