android processbar
来源:互联网 发布:淘宝客流量来源 编辑:程序博客网 时间:2024/05/22 15:53
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:orientation="vertical" 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" > <ProgressBar android:id="@+id/ProgressBar01" style="?android:attr/progressBarStyleHorizontal" android:layout_width="200dp" android:layout_height="wrap_content" android:visibility="gone" /> <ProgressBar android:id="@+id/ProgressBar02" style="?android:attr/progressBarStyleLarge" android:layout_width="wrap_content" android:layout_height="wrap_content" android:max="100" android:progress="50" android:secondaryProgress="70" android:visibility="gone" /> <Button android:id="@+id/Button01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="开始" /></RelativeLayout>
MainActivity.java
package com.example.processbardemo;import android.app.Activity;import android.os.Bundle;import android.os.Handler;import android.os.Message;import android.view.View;import android.view.Window;import android.widget.Button;import android.widget.ProgressBar;public class MainActivity extends Activity {//声明ProgressBar对象private ProgressBar xh_ProgressBar;private ProgressBar xh_ProgressBar2;private Button xh_Button;protected static final int GUI_STOP_NOTIFIER = 0x108;protected static final int GUI_THREADING_NOTIFIER = 0x109;public int intCounter = 0;@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);//设置窗口模式,因为需要显示进度条在标题栏requestWindowFeature(Window.FEATURE_PROGRESS);setProgressBarVisibility(true);setContentView(R.layout.activity_main);//得到ProgressBarxh_ProgressBar = (ProgressBar) findViewById(R.id.ProgressBar01);xh_ProgressBar2 = (ProgressBar) findViewById(R.id.ProgressBar02);xh_Button = (Button) findViewById(R.id.Button01);//设置进度条 不为 不确定模式xh_ProgressBar.setIndeterminate(false);xh_ProgressBar2.setIndeterminate(false);//当按钮按下时开始执行xh_Button.setOnClickListener(new Button.OnClickListener() {@Overridepublic void onClick(View v) {//设置ProgressBar为可见状态xh_ProgressBar.setVisibility(View.VISIBLE);xh_ProgressBar2.setVisibility(View.VISIBLE);//设置ProgressBar的最大值xh_ProgressBar.setMax(100);//设置ProgressBar当前值xh_ProgressBar.setProgress(0);xh_ProgressBar2.setProgress(0);//通过线程来改变ProgressBar的值new Thread(new Runnable() {@Overridepublic void run() {for (int i = 0; i < 10; i++) {try {//设置进度值intCounter = (i + 1) * 20;//睡眠1000毫秒Thread.sleep(1000);if (i == 4) {Message m = new Message();m.what = MainActivity.GUI_STOP_NOTIFIER;MainActivity.this.myMessageHandler.sendMessage(m);break;} else {Message m = new Message();m.what = MainActivity.GUI_THREADING_NOTIFIER;MainActivity.this.myMessageHandler.sendMessage(m);}} catch (Exception e) {e.printStackTrace();}}}}).start();}});}Handler myMessageHandler = new Handler() {@Overridepublic void handleMessage(Message msg) {switch (msg.what) {//ProgressBar已经是最大值case MainActivity.GUI_STOP_NOTIFIER:xh_ProgressBar.setVisibility(View.GONE);xh_ProgressBar2.setVisibility(View.GONE);Thread.currentThread().interrupted();break;case MainActivity.GUI_THREADING_NOTIFIER:if (!Thread.currentThread().isInterrupted()) {//改变ProgressBar的当前值xh_ProgressBar.setProgress(intCounter);xh_ProgressBar2.setProgress(intCounter);//设置标题栏中前景的一个进度条进度值setProgress(intCounter * 100);}break;}super.handleMessage(msg);}};}
0 0
- android processbar
- Android processBar的应用
- android中的进度条processBar
- android processBar and RatingBar
- android学习,关于ProcessBar,Listview
- android sdk----processBar的使用
- android 组件之ProcessBar (更改系统ProcessBar图标等)
- android界面组件之进度条--ProcessBar
- android应用开发笔记---常用控件ProcessBar和ListView
- android processBar seekBar 定制(底部间隙问题)
- ProcessBar使用
- symbian 进度条 processbar
- 面试题总结-processbar
- C# 多线程更新Processbar
- ui.ProcessBar及其子类
- thinker学习笔记processbar
- ProcessBar简单应用
- 进度条ProcessBar示例
- 包(package)
- Intellij Idea快速生成表格
- 黑马程序员——枚举学习总结
- java.io.EOFException: No content to map to Object due to end of input
- 浩方对战平台原理分析
- android processbar
- 迩一直在硪身旁 从未走远
- Android中的ID能否重名
- 2014微软编程之美初赛第一场第二题 树
- diff命令
- 线程同步于死锁
- 虚函数的实现机制
- 并发时,缓存锁导致的相关问题
- linux VFS 之五:目录项dentry