android的三个基础控件,Android基础控件——ProgressBar自定义的介绍、动画效果实现、附加三个漂亮的进度条...
xml文件:
android:centerColor="#00ff00"
android:endColor="#0000ff"
android:startColor="#ff0000" />
angle效果图[演示从0-45-90-135-180](为了更好的理解)
centerX效果图[演示从0-0.2-0.4-0.6-0.8-1.0](为了更好的理解)
步骤一:创建出drawable的xml文件
android:centerColor="#88ff3939"
android:endColor="#50ff3939"
android:startColor="#90ff3939" />
android:centerColor="#88221e12"
android:endColor="#50221e12"
android:startColor="#90221e12" />
步骤二:在layout的xml文件中使用
android:id="@+id/pb"
style="@style/Base.Widget.AppCompat.ProgressBar.Horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:progressDrawable="@drawable/custom_download_progress_bar" />步骤三:查看效果图步骤四:动画效果实现(这里使用indeterminateDrawable这个属性)准备一组图片,在drawable\xml中:
android:oneshot="false">
android:drawable="@drawable/app_refresh_people_0"
android:duration="200" />
android:drawable="@drawable/app_refresh_people_1"
android:duration="200" />
android:drawable="@drawable/app_refresh_people_2"
android:duration="200" />
android:drawable="@drawable/app_refresh_people_3"
android:duration="200" />
在layout\xml文件中:
style="?android:attr/progressBarStyle"
android:layout_width="98dp"
android:layout_height="146dp"
android:layout_centerInParent="true"
android:indeterminate="false"
android:indeterminateDrawable="@drawable/custom_animation_progress_bar" />效果图:步骤五:附加三个漂亮的进度条先看效果图:
三个drawable的xml文件:orange
red
blue
三个在layout的xml文件:
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:padding="16dp">
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:background="#F07C4E"
android:orientation="horizontal"
android:padding="8dp">
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:background="#DB551D"
android:paddingBottom="8dp"
android:paddingLeft="16dp"
android:paddingRight="16dp"
android:paddingTop="8dp"
android:text="18%"
android:textColor="#ffffff"
android:textSize="16dp" />
style="@style/Base.Widget.AppCompat.ProgressBar.Horizontal"
android:layout_width="match_parent"
android:layout_height="22dp"
android:layout_gravity="center_vertical"
android:paddingBottom="6dp"
android:paddingLeft="12dp"
android:paddingRight="12dp"
android:paddingTop="6dp"
android:progress="18"
android:progressDrawable="@drawable/custom_orange_progress_bar" />
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:background="#F14E69"
android:orientation="horizontal"
android:padding="8dp">
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:background="#DA1C38"
android:paddingBottom="8dp"
android:paddingLeft="16dp"
android:paddingRight="16dp"
android:paddingTop="8dp"
android:text="62%"
android:textColor="#ffffff"
android:textSize="16dp" />
style="@style/Base.Widget.AppCompat.ProgressBar.Horizontal"
android:layout_width="match_parent"
android:layout_height="22dp"
android:layout_gravity="center_vertical"
android:paddingBottom="6dp"
android:paddingLeft="12dp"
android:paddingRight="12dp"
android:paddingTop="6dp"
android:progress="62"
android:progressDrawable="@drawable/custom_red_progress_bar" />
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:background="#4ED9EC"
android:orientation="horizontal"
android:padding="8dp">
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:background="#1DBADB"
android:paddingBottom="8dp"
android:paddingLeft="16dp"
android:paddingRight="16dp"
android:paddingTop="8dp"
android:text="47%"
android:textColor="#ffffff"
android:textSize="16dp" />
style="@style/Base.Widget.AppCompat.ProgressBar.Horizontal"
android:layout_width="match_parent"
android:layout_height="22dp"
android:layout_gravity="center_vertical"
android:paddingBottom="6dp"
android:paddingLeft="12dp"
android:paddingRight="12dp"
android:paddingTop="6dp"
android:progress="47"
android:progressDrawable="@drawable/custom_blue_progress_bar" />
android的三个基础控件,Android基础控件——ProgressBar自定义的介绍、动画效果实现、附加三个漂亮的进度条...相关推荐
- Android基础控件——ProgressBar自定义的介绍、动画效果实现、附加三个漂亮的进度条
ProgressBar自定义的介绍.动画效果实现.附加三个漂亮的进度条 shape属性介绍: corners 圆角 gradient 渐变 padding 内容离边界距离 size 大小 ...
- Android基础控件——SeekBar的自定义,超短代码模仿抖音带有数字拖拽进度条
前言 在开发中,经常会遇到SeekBar组件的开发,一个高效的自定义SeekBar显得尤为重要,笔者刚好也在项目中大量使用带有数字的拖拽进度条,在深思熟虑后,打算从继承源码形式上,把数字绘制在拖拽进度 ...
- android漂亮的进度条,Android编程之NumberProgressBar:漂亮的Android进度条
NumberProgressBar是一个简约性感的数字进度条,该控件虽然也叫ProgressBar,但是和sdk中的ProgressBar控件没有任何继承关系,直接继承子view. Download ...
- android 自定义加载动画效果,Android自定义View实现loading动画加载效果
项目开发中对Loading的处理是比较常见的,安卓系统提供的不太美观,引入第三发又太麻烦,这时候自己定义View来实现这个效果,并且进行封装抽取给项目提供统一的loading样式是最好的解决方式了. ...
- Android中实现ProgressBar菊花旋转的动画效果
在一些常见到的加载中需要显示一个加载动画,如旋转的菊花,旋转的圈圈等等动画-,然后我们现在就来说下怎么去试下它吧 一.菊花的旋转动画 1.新建一个drawable文件 在res/drawable下新建 ...
- 精通Android自定义View(十四)绘制水平向右加载的进度条
1引言 1 精通Android自定义View(一)View的绘制流程简述 2 精通Android自定义View(二)View绘制三部曲 3 精通Android自定义View(三)View绘制三部曲综合 ...
- android 自定义加载动画效果,Android 自定义View修炼-自定义加载进度动画LoadingImageView...
一.概述 本自定义View,是加载进度动画的自定义View,继承于ImageView来实现,主要实现蒙层加载进度的加载进度效果. 支持水平左右加载和垂直上下加载四个方向,同时也支持自定义蒙层进度颜色. ...
- android ar人脸贴图,ARCore与ARKit实现人脸贴纸、更换材质等动画效果
近两年市面上出现了很多有关有关美颜滤镜.贴纸等各种贴纸效果的相机出现,由于项目的需要调研了google开源的一个能够提供3D角度的ARCore框架,本人也结合ARKit在iOS手机上实现了类抖音的效果 ...
- android音乐播放器上一首,安卓源码(音乐播放器,有播放和下一首,和进度条等功能)...
[实例简介] 安卓音乐播放器,可以完美播放音乐,放下使用,在安卓eclipse下使用. [实例截图] [核心代码] Player └── Player ├── AndroidManifest.xml ...
最新文章
- 如何计算服务限流的配额
- ITK:图像的区域最大值
- swift面向对象之多态与继承
- map的几种遍历方法
- Android 系统(275)---Mtk Webview基本问题
- 百度智能音箱新品被指抄袭天猫精灵方糖R:存在5处雷同
- D3 Selections
- [转]Linux TCP/IP 协议栈的关键数据结构Socket Buffer(sk_buff )
- 苹果x用了2年了,当前4G信号时有时无,大家有遇到过么?
- Javascript备忘复习笔记2
- 《Efficient Android Threading》Chapter 3---Threads on Android (Android中的线程)
- PDF内容太多分不清?这个PDF加页码的方法可以帮助你
- IT小白重装系统大全
- 指纹支付 java lang6_支付宝;超6成人使用指纹、刷脸支付,网友;喜欢用密码!...
- 微信小程序《难忘便签》开发记录
- threejs-经纬度转换成xyz坐标的方法
- 图像处理之仿油画效果
- python基础知识整理一
- LeetCode——883. 三维形体投影面积
- elementui from表单提交_vue+element-ui el-form表单验证及提交验证
热门文章
- Linux优化不知如何下手?那你的看看这篇文章了
- Python基础教程:菱形继承问题
- 在html页面中加入矢量图,HTML5画布矢量图形?
- Linux socket 流模式(STREAM)跟数据报模式(DGRAM)的区别
- Linux ubuntu16.04 安装opencv4教程(源码编译)
- 【放置奇兵】算法 酒馆攻略
- 华硕主板X99-E WS/USB 3.1 Intel Realsense D435摄像头掉线是否与Intel推行的xhci有关?
- Python 计算机视觉(十一)—— OpenCV 图像形态学处理
- Python---Pickle模块
- 王道考研——计算机组成原理(第二章 数据的表示和运算)