Android改变进度条控件progressbar的样式(根据源码修改)

简介: 本文介绍了如何基于Android源码自定义ProgressBar样式。首先分析了系统源码中ProgressBar样式的定义,发现其依赖一张旋转图片实现动画效果。接着分两步指导开发者实现自定义:1) 模仿源码创建一个旋转动画XML文件(放置在drawable文件夹),修改图片为自定义样式;2) 在UI控件中通过`indeterminateDrawable`属性应用该动画。最终实现简单且个性化的ProgressBar效果,附带效果图展示。

网上有一大堆的改变样式的方法:博主比较喜欢根据Android源码来改--->sdk
其实代码很简单,但是为什么这么改还是要解释一下:
下面来看一下Android源码中是怎么定义progressbar的样式的

1.png

然后按照里面的属性往下面找:你会发现其中有一张图片 ,然后我们来看看这张图片是什么样子
2.png

图片如下:
3.png

那么既然AS中能这么定义,我们开发者当然也能(操作分成两部)。

第一步:模仿源码定义一个旋转动画的xml文件,将图片改成自己想要的样子(一般动画文件应该放在anim文件夹中,但是AS中是默认放在drawable文件中的,所以我们还是放在drawable文件中)。
4.png

第二步:在要显示在UI界面的控件中将这个动画添加进去:--->indeterminateDrawable
5.png

效果如下:
6.gif

效果就已经达成了,是不是很简单呢,欢迎留言

相关文章
|
2月前
|
Android开发 开发者
Android中Dialog位置+样式的设置
本文介绍了在Android开发中如何设置Dialog的位置和样式。通过自定义`MyDialog`类,可以灵活调整Dialog的显示位置,例如将其固定在屏幕底部,并设置宽度匹配父布局。同时,文章还展示了如何模仿Android原生Dialog样式,通过定义`MyDialogStyle`去除标题栏、设置背景透明度、添加阴影效果以及配置点击外部关闭等功能,从而实现更加美观和符合需求的Dialog效果。代码示例详细,便于开发者快速上手实现。
168 2
|
2月前
|
Android开发
Android控件样式的抽取(小提及快捷方式)
在Android开发中,若多个控件样式重复,可抽取公共部分以简化代码。例如对EditText提取样式,通过编辑`styles.xml`实现复用。为提高效率,Android Studio提供自动提取Style功能:右键点击控件样式选项,选择“Style...”,勾选需要提取的属性后确认,即可快速生成样式代码,显著提升开发便利性。
|
2月前
|
搜索推荐 Android开发 开发者
Android星级评分条RatingBar样式的改变及出现问题的解决方法
本文介绍了自定义 RatingBar 的实现方法,通过布局文件、layer-list 样式文件和 style 文件的配置完成个性化星星评分效果。关键步骤包括:1) 在布局文件中添加 RatingBar 并引用样式;2) 创建 layer-list 文件定义背景、次级进度和进度图片;3) 在 style 文件中定义 RatingBar 样式并应用到布局中。可能出现的问题及解决办法:直接报错通常是图片素材过大,调整尺寸即可;星星流眼泪是图片形状问题,需将图片置于透明圆形或正方形内重新组合。附有具体代码示例,方便开发者快速上手实现自定义评分组件。
88 12
|
3月前
|
NoSQL 应用服务中间件 PHP
布谷一对一直播源码android版环境配置流程及功能明细
部署需基于 CentOS 7.9 系统,硬盘不低于 40G,使用宝塔面板安装环境,包括 PHP 7.3(含 Redis、Fileinfo 扩展)、Nginx、MySQL 5.6、Redis 和最新 Composer。Swoole 扩展需按步骤配置。2021.08.05 后部署需将站点目录设为 public 并用 ThinkPHP 伪静态。开发环境建议 Windows 操作系统与最新 Android Studio,基础配置涉及 APP 名称修改、接口域名更换、包名调整及第三方登录分享(如 QQ、微信)的配置,同时需完成阿里云与腾讯云相关设置。
|
Java API Android开发
19. 【Android教程】进度条 ProgressBar
19. 【Android教程】进度条 ProgressBar
514 4
|
Android开发
Android零基础入门第51节:进度条ProgressBar
原文:Android零基础入门第51节:进度条ProgressBar    不知不觉这已经是第51期了,在前面50期我们学了Android开发中使用频率非常高的一些UI组件,当然这些组件还不足够完成所有APP的开发,还会经常用到一些诸如进度条、拖动条、搜索框、时间和日期选择器等组件,那么后面几期就来一起学习这些高级组件。
1748 0
|
XML Android开发 数据格式
我的Android进阶之旅------>Android之进度条(ProgressBar)的功能和用法
一、简介        进度条是UI界面中一种非常实用的组件,退出用于向用户显示某个比较耗时间的操作完成的百分比。因此进度条可以动态的显示进度,避免长时间地执行某个耗时操作, 让用户感觉程序失去了响应,从而更好的提高用户界面的友好性。
1194 0
|
Android开发
Android入门之进度条(ProgressBar)
package com.jkxqj.helloandroid; import android.app.Activity; import android.os.Bundle; import android.view.Menu; import android.view.View; import android.view.View.OnClickListener; import andr
1235 0