温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Android如何实现横向进度条演示效果

发布时间:2021-06-26 11:16:01 来源:亿速云 阅读:219 作者:小新 栏目:移动开发

这篇文章主要为大家展示了“Android如何实现横向进度条演示效果”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Android如何实现横向进度条演示效果”这篇文章吧。

1.效果图:

Android如何实现横向进度条演示效果

2.布局说明:

1.textview显示进度条
2.ProgressBar进度条
3.进度条配置:

 <ProgressBar
  android:id="@+id/pb"  
  android:layout_width="match_parent"
  android:layout_height="wrap_content"
  android:max="100" />

其中:max可以手动设置,也就是你下载的内容大小,style也是

3.实例源码:

package com.zengtao.classwork; 
 
import android.os.Bundle; 
import android.os.Handler; 
import android.os.Message; 
import android.support.v7.app.ActionBarActivity; 
import android.widget.ProgressBar; 
 
public class MainActivity extends ActionBarActivity { 
 private ProgressBar pb; // 进度条 
 private int[] randData = new int[100]; // 数组 
 private int index = 0; // 索引 
 private int mProgressStaus = 0; // 设置进度条的长度 
 private Handler mHandler; 
 
 @Override 
 protected void onCreate(Bundle savedInstanceState) { 
  super.onCreate(savedInstanceState); 
  setContentView(R.layout.activity_main); 
 
  pb = (ProgressBar) findViewById(R.id.pb); 
 
  // 初始化handle,绑定在主线程中的队列消息中 
  mHandler = new Handler() { 
   @Override 
   public void handleMessage(Message msg) { 
    super.handleMessage(msg); 
    // 接收消息 
    if (msg.what == 0x111) { 
     mProgressStaus = index; 
     pb.setProgress(mProgressStaus); 
    } 
   } 
  }; 
  // 创建子线程,在子线程中处理耗时工作 
  new Thread() { 
   @Override 
   public void run() { 
    super.run(); 
    while (index < 100) { 
     doWork(); 
     Message msg = new Message(); 
     msg.what = 0x111; 
     mHandler.sendMessage(msg); 
    } 
   } 
 
  }.start(); 
 } 
 
 /** 
  * 模拟耗时工作(一定要在子线程中做) 
  * 
  * @return 进度条的多少 
  */ 
 public int doWork() { 
  randData[index++] = (int) (Math.random() * 100); 
  try { 
   Thread.sleep(100); 
  } catch (InterruptedException e) { 
   e.printStackTrace(); 
  } 
  return index; 
 } 
}

以上是“Android如何实现横向进度条演示效果”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI