`
radio123
  • 浏览: 205700 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

【转】Android自定义控件实现环形播放进度条

 
阅读更多

原文地址:http://www.eoeandroid.com/code/2011/1206/254.html

代码下载地址: http://www.eoe.cn/uploadfile/2011/1206/20111206024630395.zip

导读:我们就可以再Android的基础控件上实现我们想要的功能或者自定义的外观。以ProgressBar为例,对于可调节的进度条似乎只有长条形的ProgressBar

 

\"></p>
<p style=

01 <?xml version="1.0" encoding="utf-8"?> 
02 <resources>
03  
04     <declare-styleable name="RoundProgressBar"
05         <attr name="max" format="integer"/>       
06         <attr name="fill" format="boolean"/>                        <!-- 是否填充圆形区域 -->
07         <attr name="Paint_Width" format="integer"/>                <!-- 画笔宽度,填充模式下无效,会被重置为0 -->
08         <attr name="Paint_Color" format="integer"/>                <!-- 画笔颜色 -->
09         <attr name="Show_Bottom" format="boolean"/>                <!-- 是否显示底色 -->
10         <attr name="Inside_Interval" format="integer"/> <!-- 圆形区域向里缩进的距离 -->
11     </declare-styleable> 
12      
13 </resources>

 

这样在布局文件中,就可以配置这些属性值了,相关定义注释已写的很清楚,具体的大家下代码跑一跑比对一下就知道了

由于绘图使用的是纯画笔绘制,那么在视觉上看起来会比较单调,其实可以通过对画笔设置渲染效果来达到一个炫丽的效果,有兴趣的童鞋可以试一下,Paint.setShader这个接口,本例无此实现,就不详细介绍了

控件中有两个接口是作动画相关的
        public synchronized void  startCartoom(int time)
        public synchronized void  stopCartoom()


比如你想播放一个10秒的录音,同时用进度条来表示播放进度,那么就可以调用 startCartoom(i10)来开启动画
其他的似乎没啥好说的了,代码就不贴上来了,源码工程里的注释也写很清楚了,大家下下来看看就明白了

至于为什么该类继承于TextView而不是View其实是为了在配置文件里指定背景图能够自适应大小,继承与View则需要自己去实现,其实也不难,重写OnMeasure方法,在该方法里调用setMeasuredDimension重新设置视图大小为背景图大小就可以了,怎么获取背景图就不用哥说了吧。
好吧,就这样吧,附上源码工程:

分享到:
评论

相关推荐

    Android自定义控件开发入门与实战.zip

    在Android应用开发中,自定义控件是提升用户体验和实现独特设计的重要手段。《Android自定义控件开发入门与实战》这本书深入浅出地讲解了如何在Android平台上创建和使用自定义控件,旨在帮助开发者从基础知识到实战...

    Android自定义控件实现导航条IndicatorView

    本文将深入探讨如何实现一个自定义的导航条IndicatorView,该控件具备滚动、快速滚动以及自动滚动到选中项完全显示在屏幕上的功能。我们将分为以下几个部分进行讲解: 1. **基础概念与需求分析** - IndicatorView...

    android 自定义控件实现demo收集 及 框架收集

    下面将对"android 自定义控件实现demo收集 及 框架收集"这一主题进行深入探讨。 首先,自定义控件在Android应用开发中扮演着重要角色。它们允许开发者根据项目需求创建具有独特功能和外观的组件,超越了Android SDK...

    《Android自定义控件开发入门与实战》_启舰.rar

    Android自定义控件开发入门与实战从自定义基础到实战的讲解。一步步深入。适合有一定Android基础的读者。本压缩包中自带了推荐的pdf阅读器。大家要是喜欢这本文档,推荐去京东,天猫,当当买支持一下默默付出的作者...

    android自定义控件介绍,重写控件

    在Android开发中,自定义控件是提升应用用户体验和实现独特设计的重要手段。本文将深入探讨Android自定义控件的概念、重要性以及如何通过重写已有控件来扩展其功能,帮助开发者从初阶迈进高阶。 首先,我们了解什么...

    Android自定义控件之拖动条

    本文将深入探讨如何创建一个美观的自定义拖动条控件,即"Android自定义控件之拖动条"。我们将讨论以下几个关键知识点: 1. **基础知识**:在Android中,基本的滑动条控件是`SeekBar`,它允许用户通过拖动滑块来选择...

    Android自定义控件示例

    在Android开发中,自定义控件是提升应用独特性和功能扩展性的重要手段。这个压缩包“CustomViews”很可能是包含了一系列Android自定义控件的示例项目,旨在帮助开发者理解和学习如何在Android Studio 1.0.2环境下...

    android自定义控件源码

    本资源"android自定义控件源码"提供了一套详细的自定义控件实现案例,帮助开发者深入理解自定义控件的工作原理和实现方法。配合文章《Android自定义控件深度解析》(文章地址:...

    安卓自定义控件相关-Android自定义控件源码.rar

    这个压缩包"Android自定义控件源码.rar"包含了一些自定义控件的源代码,虽然不能保证每个都可直接运行,但它们提供了丰富的学习资源,帮助开发者理解和实践自定义控件的创建过程。下面将详细探讨Android自定义控件的...

    Android 自定义控件 组合控件

    总结起来,Android自定义组合控件的实现涉及到了对Android UI框架的深入理解和实践,包括继承自定义View或ViewGroup、测量与布局、绘制、事件处理等关键步骤。通过这样的方式,开发者可以构建出功能强大、交互丰富的...

    【Android进阶】(1)用继承和组合方式自定义控件

    在Android开发中,自定义控件是提升应用用户体验和界面设计独特性的重要手段。本教程主要探讨如何通过继承和组合的方式来自定义控件,适用于已经有一定Android基础的开发者进行进阶学习。 首先,我们来理解自定义...

    Avalonia实现导航条自定义控件

    Avalonia实现导航条自定义控件;Avalonia实现导航条自定义控件;Avalonia实现导航条自定义控件;Avalonia实现导航条自定义控件;Avalonia实现导航条自定义控件;Avalonia实现导航条自定义控件;Avalonia实现导航条...

    android 自定义控件 小球圆周运动

    在Android开发中,自定义控件是实现独特用户界面效果的重要手段。本教程将深入探讨如何创建一个自定义控件,让小球沿着圆周进行运动。这个过程涉及到Canvas绘图、动画处理以及Android帧率控制等多个核心知识点。 ...

    Aandroid自定义环形播放进度条

    android自定义环形播放进度条源码,供需要的人下载。

    Android 自定义控件简单Demo

    在Android开发中,自定义控件是提升应用独特性和用户体验的重要手段。本示例"Android 自定义控件简单Demo"将向我们展示如何创建一个结合图片和文字的自定义控件,这通常用于构建定制化的按钮、标签或其他UI元素。...

    Android自定义控件的demo

    本示例将深入讲解如何基于Android系统实现一个自定义的Button控件,该控件由一个ImageView和一个TextView组成,并添加了标签功能。以下我们将从以下几个方面展开讨论: 1. **基础知识**:在Android中,控件是构成UI...

    自定义控件实现横向滑动背景图视差效果

    在Android开发中,自定义控件是提升应用用户体验和界面独特性的关键手段。本文将深入探讨如何通过自定义控件实现横向滑动背景图的视差效果,这通常用于模仿真实世界中的深度感知,增强用户的沉浸感。我们将讨论以下...

    Android自定义控件开发入门与实战(高清完整书签)电子书

    《Android自定义控件开发入门与实战》从自定义控件的动画、绘图、视图三方面入手,分别讲解与自定义控件相关的各种知识,给大家系统地梳理相关知识点,并且通过翔实的案例讲解每个知识点在现实工作中所能实现的功能...

    《Android自定义控件入门到实战》源码2018.10

    《Android自定义控件入门到实战》是一本深入讲解Android平台下自定义控件开发的教程,源码2018.10版提供了一套完整的实践案例,帮助开发者从基础到进阶全面掌握自定义控件的制作技巧。这份资料涵盖了从基本的自定义...

    《Android自定义控件入门到实战》源码

    通过《Android自定义控件入门到实战》源码的学习,开发者可以从实践中探索这些知识点,逐步掌握自定义控件的设计与实现技巧。这些源码实例将涵盖各种自定义控件的实现,如进度条、滑块、日历、图表等,帮助开发者在...

Global site tag (gtag.js) - Google Analytics