Android动画之进度条

动画实现自定义圆形加载中效果的进度条 

Android开发中在处理耗时工作的时候,例如:列表加载,大多数会有一个精度条加载的框,里面有一个像gif的图片在旋转一样。

定义res/anim/loading.xml:

<!--

    根标签为animation-list,其中oneshot代表着是否只展示一遍,设置为false会不停的循环播放动画   true展示一遍

    根标签下,通过item标签对动画中的每一个图片进行声明 

  android:duration 表示展示该图片的时间长度 

-->

<?xmlversion="1.0"encoding="utf-8"?>

<animation-listxmlns:android="http://schemas.android.com/apk/res/android"

    android:oneshot="false">

 

    <item

        android:drawable="@drawable/loading1"

        android:duration="100"/>

    <item

        android:drawable="@drawable/loading2"

        android:duration="100"/>

    <item

        android:drawable="@drawable/loading3"

        android:duration="100"/>

    <item

        android:drawable="@drawable/loading4"

        android:duration="100"/>

    <item

        android:drawable="@drawable/loading5"

        android:duration="100"/>

    <item

        android:drawable="@drawable/loading6"

        android:duration="100"/>

    <item

        android:drawable="@drawable/loading7"

        android:duration="100"/>

    <item

        android:drawable="@drawable/loading8"

        android:duration="100"/>

    <item

        android:drawable="@drawable/loading9"

        android:duration="100"/>

    <item

        android:drawable="@drawable/loading10"

        android:duration="100"/>

    <item

        android:drawable="@drawable/loading11"

        android:duration="100"/>

    <item

        android:drawable="@drawable/loading12"

        android:duration="100"/>

 

</animation-list>

在layout文件中引用如下:

<?xmlversion="1.0"encoding="utf-8"?>

<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"

    android:layout_width="match_parent"

    android:layout_height="match_parent"

    android:background="@android:color/white"

    android:gravity="center_horizontal"

    android:orientation="vertical">

 

    <ProgressBar

        android:id="@+id/xlistview_footer_progressbar"

        android:layout_width="21dp"

        android:layout_height="21dp"

        android:layout_centerInParent="true"

        android:layout_marginTop="15dp"

        android:indeterminate="false"

        android:indeterminateDrawable="@anim/loading"/>

 

    <ImageView

        android:id="@+id/imageView1"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_marginTop="50dp"/>

 

    <LinearLayout

        android:layout_width="match_parent"

        android:layout_height="wrap_content">

 

        <Button

            android:id="@+id/button1"

            android:layout_width="wrap_content"

            android:layout_height="wrap_content"

            android:text="启动"/>

 

        <Button

            android:id="@+id/button2"

            android:layout_width="wrap_content"

            android:layout_height="wrap_content"

            android:text="暂停"/>

    </LinearLayout>

 

</LinearLayout>

效果图:

源码下载:  http://download.csdn.net/detail/dickyqie/9673734

时间: 2024-10-23 20:22:50

Android动画之进度条的相关文章

【转】24. android dialog ——ProgressDialog 进度条对话框详解

原文网址:http://blog.csdn.net/jamesliulyc/article/details/6375598 首先在onCreateDialog方法里创建一个ProgressDialog,如下: [java] view plaincopy //this表示该对话框是针对当前Activity的 progressDialog = new ProgressDialog(this); //设置最大值为100 progressDialog.setMax(100); //设置进度条风格STYL

Android 中带有进度条效果的按钮(Button)

安卓中带有进度条效果的按钮,如下图: 1.布局文件如下activity_main.xml 1 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 2 xmlns:tools="http://schemas.android.com/tools" 3 android:layout_width="fill_parent" 4 android:layo

[Android]组件之进度条2

这个例子不错,详细讲解了alertdialog及LayoutInflater的用法: main.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:lay

Android——菜单和进度条

xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent&quo

android中的进度条

Android中有多种进度条,如转圈的圆环,水平线的进度条.可拉伸的进度条等,各种进度条关系如下 SeekBar是可拉伸的进度条,RatingBar是用于评分的进度条,都属于ProgressBar的子类 ProgressBar有多种风格,如Horizontal.Small.Large.Inverse等 进度条的主要属性 进度条最大值:max 当前进度:progress 次要进度的值:SecondaryProgress progressbar.isIndeterminate(); 用于判断进度条是

android快递跟踪进度条

android 快递跟踪进度条 activity.class import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import android.app.Activity; import android.os.Bundle; import android.widget.ListView; public class MainActivity extends

Android View 之进度条+拖动条+星级评论条....

PS:将来的你会感谢现在奋斗的自己.... 学习内容: 1.进度条 2.拖动条 3.星级评论条 1.进度条...       进图条这东西想必大家是很熟悉的...为了使用户不会觉得应用程序死掉了,因此为之设置一个进度条使应用程序的运行状态更好的反馈给客户...这也就是进度条的作用...因此一般的应用程序都会加入进度条...进度条分为圆形进度条和线性的进度条...目的都是一样的,只是展示的效果是不同的...用代码讲解一下... <LinearLayout xmlns:android="htt

Android webview 显示进度条

代码: ProgressDialog dialog = null; /** * 嵌入浏览器 */ private void embedBrowser(String url) { Log.i(TAG, url); WebView browser = (WebView) this.findViewById(R.id.c131_webkit); if (browser != null) { wifi = new WifiService(this); if (wifi.isNetworkConnecte

Android ProgressBar 反向进度条/进度条从右到左走

最近的项目,有个需求需要使用条状图显示比例,并且右对齐,见下图: 我想到了使用进度条,这样不就不需要在代码动态绘制条状了,省了很多活. 那么进度条怎样从右向左显示呢? 方案一: 将ProgressBar的前背景反着用,将前景色设置为和整个大背景同一色,将背景设置为你要的条状图颜色,这样就看不出实际的进度,看到的是进度背景,在视觉上看上去就是右对齐了.实际上还是原来那个进度条. 缺点:我这个进度条是放在ListView的item中的,点击listview,因为listview有选中的背景显示出来,