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

Progressbar组件自定义样式

Progressbar原生太丑了,根据UI设计图需要自定义样式,比如圆角,进度中末端是直角,怎样实现呢?

设计稿:

方案:

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android"><!-- 背景部分 --><item android:id="@android:id/background"><shape android:shape="rectangle"><solid android:color="#4dcbd2de" />  <!-- 背景颜色 --><!-- 圆角设置 --><cornersandroid:bottomLeftRadius="100dp"android:bottomRightRadius="100dp"android:topLeftRadius="100dp"android:topRightRadius="100dp" /></shape></item><!-- 进度部分 --><item android:id="@android:id/progress"><clip><shape android:shape="rectangle"><!-- 渐变色 --><gradientandroid:angle="180"android:endColor="#ff3a77f0"android:startColor="#ff3aacf0"android:type="linear"android:useLevel="true" /><!-- 进度条圆角设置 --><cornersandroid:bottomLeftRadius="100dp"android:bottomRightRadius="100dp"android:topLeftRadius="100dp"android:topRightRadius="100dp" /></shape></clip></item></layer-list>

进度id = progressbar的部分,有个标签Clip很重要。他的作用是“切”,将进度切到指定位置。若充满,自动变成圆角!

先创建样式:

values/themes.xml下<style name="CustomProgressBar" parent="Widget.AppCompat.ProgressBar.Horizontal"><item name="android:progressDrawable">@drawable/progressbarbg</item></style>

样式使用如下:

 <ProgressBarandroid:id="@+id/progress_horizontal"android:layout_width="match_parent"style="@style/CustomProgressBar"android:max="100"android:indeterminate="false"android:layout_marginLeft="10dp"android:layout_marginRight="10dp"android:progress="10"android:layout_height="16dp"/>

或直接设置属性,

<ProgressBarandroid:id="@+id/progress_horizontal1"android:layout_width="match_parent"style="@style/CustomProgressBar"android:progressDrawable="@drawable/progressbarbg"//这里引用android:max="100"android:indeterminate="false"android:layout_marginLeft="10dp"android:layout_marginTop="30dp"android:layout_marginRight="10dp"android:progress="50"android:layout_height="16dp"/>

效果图:

倒数一 二组件效果图:

倒数一:组件进度未满,进度位置是直角

倒数二:进度充满,进度末端是圆角 

http://www.dtcms.com/a/509216.html

相关文章:

  • 31.下一个排列
  • Moectf2025-webmisccrypto (持续更新
  • 济宁网站建设找哪家室内设计师工作室
  • 昆明网站建设注意事项seo咨询推广
  • 个人网站模板 html天猫优惠券网站怎么做
  • 建房城乡建设部网站wordpress 菜单保存在哪里
  • 珠海网站建设zhkmkj中国采购与招标网官网首页
  • Python开发可视化音乐播放器教程(附代码)
  • 【u-boot】u-boot支持的文件系统
  • 杭州职工业能力建设网站青岛seo全网营销
  • 哪家公司网站建设好点wordpress下载主题模板
  • 【强化学习】RLMT强制 CoT提升训练效果
  • 左Shift键失灵解决办法
  • 如何确定网站建设空间wordpress安装到本地
  • 建设网站使用的工具wordpress single模板
  • 网站域名注册费用哔哩哔哩网页入口
  • 承德市外贸网站建设网站如何建设推广
  • SVN 关于 ! 的解决
  • 如何优化自己的网站哪些建材网站可以做宣传
  • 黎平网站开发辽宁网站建设价格
  • dotnet-sdk-5.0.400-linux-x64.tar.gz 安装教程(Linux 手动安装 .NET 5.0.400 SDK 步骤)
  • 中医基础知识和核心知识
  • 校园文化宣传主题网站的建设唯美古风ppt模板
  • 珠海建网站的网络公司打开网站搜索
  • 上海营销型网站建设wap网站模板下载
  • 数字货币:从“虚拟金库”到法定货币的进化
  • 做博物馆网站最重要性企业网站营销案例
  • 企业网络搭建案例seo排名优化价格
  • 输入n个整数,输出其中最小的k个
  • 广州市增城区建设局网站是什么赣州市经开区住房和建设局网站