Android实现带有进度条的按钮效果

本文实例为大家分享了Android实现带有进度条按钮效果的具体代码,供大家参考,具体内容如下

安卓中带有进度条效果的按钮,如下图:

1.布局文件如下activity_main.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
   xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

   <TextView
     android:id="@+id/text"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:text="带有进度条的Button" />

   <RelativeLayout
     android:layout_width="fill_parent"
     android:layout_height="50dp"
     android:layout_centerHorizontal="true"
     android:layout_centerVertical="true"
     android:gravity="bottom" >

     <ProgressBar
       android:id="@+id/progressBar"
       style="?android:attr/progressBarStyleHorizontal"
       android:layout_width="fill_parent"
       android:layout_height="fill_parent"
       android:background="@drawable/aa_button_gray_normal"
       android:max="100"
       android:progress="0"
       android:progressDrawable="@drawable/progress_selector" />

     <Button
       android:id="@+id/downLoadBtn"
       android:layout_width="fill_parent"
       android:layout_height="fill_parent"
       android:layout_centerHorizontal="true"
       android:layout_centerVertical="true"
       android:background="@drawable/btn_selector"
       android:text="下载" />
   </RelativeLayout>

</RelativeLayout>

2.java主界面代码如下:MainActivity.java

package com.example.buttondemo;

import android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.view.View;
import android.widget.Button;
import android.widget.ProgressBar;
import android.widget.TextView;

 public class MainActivity extends Activity {
   int i = 0;
   ProgressBar progressBar = null;
   Button downLoadBtn = null;
   Handler handler = new Handler() {
     public void handleMessage(android.os.Message msg) {
       switch (msg.what) {
       case 1:
         i += 5;
         progressBar.setProgress(i);
         if (i != 100) {
           handler.sendEmptyMessageDelayed(new Message().what = 1, 500);
           downLoadBtn.setText(i + "%");
         } else if (i == 100) {
           downLoadBtn.setText("下载完成");
           // 进度条运行完成时按钮可用
           downLoadBtn.setEnabled(true);
         }
         break;

       default:
         break;
       }
     };
   };

   @Override
   protected void onCreate(Bundle savedInstanceState) {
     super.onCreate(savedInstanceState);
     setContentView(R.layout.activity_main);
     TextView tx = (TextView) findViewById(R.id.text);
     progressBar = (ProgressBar) findViewById(R.id.progressBar);
     downLoadBtn = (Button) findViewById(R.id.downLoadBtn);
     downLoadBtn.setOnClickListener(new View.OnClickListener() {

       @Override
       public void onClick(View v) {
         i = 0;
         handler.sendEmptyMessage(new Message().what = 1);
         // 进度条运行时按钮不可用
         downLoadBtn.setEnabled(false);
       }
     });
   }

}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • Android自定义View之圆形进度条式按钮

    介绍 今天上班的时候有个哥们问我怎么去实现一个按钮式的进度条,先来看看他需要实现的效果图. 和普通的圆形进度条类似,只是中间的地方有两个状态表示,未开始,暂停状态.而且他说圆形进度的功能已经实现了.那么我们只需要对中间的两个状态做处理就行了. 先来看看实现的效果图: 上面说了我们只需要处理中间状态的变化就可以了,对于进度的处理直接使用了弘洋文章中实现: http://blog.csdn.net/lmj623565791/article/details/43371299 下面开始具体实现. 具体实

  • Android 进度条按钮ProgressButton的实现代码

    有些App在点击下载按钮的时候,可以在按钮上显示进度,我们可以通过继承原生Button,重写onDraw来实现带进度条的按钮. Github:https://github.com/imcloudfloating/ProgressBar 1.效果: 2.原理: 创建三个GradientDrawable作为按钮背景.进度条背景和进度条前景,通过计算进度条的百分比来设置宽度,然后调用invalidate()重绘.GradientDrawable设置颜色.圆角等参数,当然你也可以直接加载xml作为背景.

  • Android实现带有进度条的按钮效果

    本文实例为大家分享了Android实现带有进度条按钮效果的具体代码,供大家参考,具体内容如下 安卓中带有进度条效果的按钮,如下图: 1.布局文件如下activity_main.xml <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_wid

  • BootStrap实现文件上传并带有进度条效果

    1.做了一天终于做出来了,在上传成功之后,可以将路径添加到数据库,因为一直在烦恼如何在上传成功之后在将路径添加到数据库,终于弄出来了,太开心了,不得不说bootstrap的强大,之前说ajax不能上传文件,之后想办法,用js写,更改了上传文件按钮的样式,但是没想到bootstrap真的太厉害了,样式还不错,可以预览,图片,限制文件的大小,格式等等,还有进度条. 后台的代码在之前写过了 这只有前台的代码 记得:在验证的时候,尽量用控制台来验证,有的时候你的代码写对了,但是有可能alert不显示 c

  • Android ProgressBar 模拟进度条效果的实现

    进度条的使用 圆形进度条 <ProgressBar android:id="@+id/pb" android:layout_width="50dp" android:layout_height="50dp" /> 如图 长条不显示进度进度条 <ProgressBar android:id="@+id/pb2" android:layout_width="300dp" android:lay

  • Android 自定义view实现进度条加载效果实例代码

    这个其实很简单,思路是这样的,就是拿view的宽度,除以点的点的宽度+二个点 之间的间距,就可以算出大概能画出几个点出来,然后就通过canvas画出点,再然后就是每隔多少时间把上面移动的点不断的去改变它的坐标就可以, 效果如下: 分析图: 代码如下: package com.example.dotloadview; import android.content.Context; import android.graphics.Bitmap; import android.graphics.Bit

  • Android 仿摩拜单车共享单车进度条实现StepView效果

    先看效果图: Step1:定义StepBean 定义五个状态,分别为:为完成.正在进行.已完成.终点完成.终点未完成. public class StepBean{ public static final int STEP_UNDO = -1;//未完成 public static final int STEP_CURRENT = 0;//正在进行 public static final int STEP_COMPLETED = 1;//已完成 public static final int S

  • android实现节点进度条效果

    本文实例为大家分享了android实现节点进度条效果展示的具体代码,供大家参考,具体内容如 代码: package utils.android.view.lxz; import java.util.ArrayList; import java.util.List; import com.community.custom.android.R; import android.app.Activity; import android.content.Context; import android.gr

  • Android 进度条自动前进效果的实现代码

    今天给大家分享进度条自动前进功能的实现,先给大家分享实现效果图,感觉不错可以参考实现代码. 效果如下图: 首先布局要设置进度条最大值: <ProgressBar android:id="@+id/pro1" style="@android:style/Widget.ProgressBar.Horizontal" android:layout_width="400dp" android:layout_centerHorizontal=&quo

  • Android自定义圆形进度条效果

    本文实例为大家分享了Android自定义圆形进度条效果的具体代码,供大家参考,具体内容如下 1 控件 RoundProgress package listview.tianhetbm.p2p.ui; import android.content.Context; import android.content.res.TypedArray; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import a

  • Android Studio实现进度条效果

    本文实例为大家分享了Android Studio实现进度条效果的具体代码,供大家参考,具体内容如下 实验作业 要求一个进度条,进度随机 效果图 xml代码 <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://s

随机推荐