栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

HarmonyOS:实现Button按下后颜色加深的效果

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

HarmonyOS:实现Button按下后颜色加深的效果

目录
  • 一、实现效果
  • 二、Android开发
  • 三、HarmonyOS开发
  • 四、比较

一、实现效果

二、Android开发

  在安卓中利用selector可以实现Button的点击效果,布局文件如下所示:

  其中shape为:



    
    
    
    
    
    

  可以看到Button的形状为矩形,但是四个角通过corners可以设置为弧形,进而形成“胶囊”效果。
  要实现Button“点击后颜色加深,释放后颜色恢复”的效果,重点在于solid的设置,即颜色的填充。
  看一下颜色文件selector:



    
    

  Android开发中利用selector可以实现一个控件两种不同的状态。在本例中,当按钮的state_pressed为true时,即按钮被按下时颜色为#CCCCFF,否则为#FFFFFF。

三、HarmonyOS开发

  鸿蒙开发中并没有selector,但有一个类似的state-container,实现代码如下:

  其中selector为:



    
    

  可以看到,当Button状态为component_state_pressed时,Button的布局为shape;当其状态为component_state_empty时,Button的布局为shape_empty。
  分别给出这两个布局文件:
  shape:



    
    
    
    
    


    

  shape_empty:



    
    
    
    
    

    
    


  可以发现二者只是填充颜色不同,而这两种颜色分别就是按下与不按下时button的颜色。

四、比较

  安卓开发和鸿蒙开发实现的方式类似,但感觉安卓开发中实现的效果要流畅一点,用户体验更好!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/342918.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号