时间:2021-05-20
首先是main.xml文件
代码如下:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <ProgressBar android:id="@+id/myprobarA" style="?android:attr/progressBarStyle" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="wrap_content"/> <ProgressBar android:id="@+id/myprobarB" style="?android:attr/progressBarStyleHorizontal" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="wrap_content"/> <ProgressBar android:id="@+id/myprobarC" style="?android:attr/progressBarStyleHorizontal" android:visibility="gone" android:max="120" android:progress="0" android:layout_width="fill_parent" android:layout_height="wrap_content"/> <ProgressBar android:id="@+id/myprobarD" android:visibility="gone" android:max="120" android:progress="50" android:secondaryProgress="70" style="?android:attr/progressBarStyleLarge" android:layout_width="fill_parent" android:layout_height="wrap_content"/> <ProgressBar android:id="@+id/myprobarE" android:visibility="gone" android:max="120" android:progress="50" android:secondaryProgress="70" style="?android:attr/progressBarStyleSmall" android:layout_width="fill_parent" android:layout_height="wrap_content"/> <Button android:id="@+id/mybut" android:text="显示进度条" android:layout_width="wrap_content" android:layout_height="wrap_content"/></LinearLayout>然后编写Activity.java类
代码如下:
package com.example.myfirstproject; import java.sql.Date;import java.text.SimpleDateFormat;import java.util.ArrayList;import java.util.List;import java.util.Timer;import java.util.TimerTask;import android.os.Bundle;import android.os.Handler;import android.os.Looper;import android.os.Message;import android.app.Activity;import android.content.pm.ActivityInfo;import android.content.res.Configuration;import android.view.Menu;import android.view.View;import android.view.View.OnClickListener;import android.view.ViewGroup;import android.widget.*; public class MainActivity extends Activity { private ProgressBar myprobarA,myprobarB,myprobarC,myprobarD,myprobarE; private Button mybut; protected static final int STOP = 1; protected static final int CONTINUE = 2; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); this.myprobarA = (ProgressBar)this.findViewById(R.id.myprobarA); this.myprobarB = (ProgressBar)this.findViewById(R.id.myprobarB); this.myprobarC = (ProgressBar)this.findViewById(R.id.myprobarC); this.myprobarD = (ProgressBar)this.findViewById(R.id.myprobarD); this.myprobarE = (ProgressBar)this.findViewById(R.id.myprobarE); this.mybut = (Button)this.findViewById(R.id.mybut); this.myprobarA.setIndeterminate(false); this.myprobarB.setIndeterminate(false); this.myprobarC.setIndeterminate(true); this.myprobarD.setIndeterminate(false); this.myprobarE.setIndeterminate(false); this.mybut.setOnClickListener(new OnClickListenerlmpl()); } private class OnClickListenerlmpl implements OnClickListener{ public void onClick(View view){ MainActivity.this.myprobarB.setSecondaryProgress(0); MainActivity.this.myprobarA.setVisibility(View.VISIBLE); MainActivity.this.myprobarB.setVisibility(View.VISIBLE); MainActivity.this.myprobarC.setVisibility(View.VISIBLE); MainActivity.this.myprobarD.setVisibility(View.VISIBLE); MainActivity.this.myprobarE.setVisibility(View.VISIBLE); MainActivity.this.myprobarA.setMax(120); MainActivity.this.myprobarB.setMax(120); MainActivity.this.myprobarA.setProgress(0); MainActivity.this.myprobarB.setProgress(0); new Thread(new Runnable(){ public void run(){ int count = 0; for(int i = 0;i < 10;i++){ try{ count = (i+1)*20; Thread.sleep(500); if(i==6){ Message m = new Message(); m.what = MainActivity.STOP; MainActivity.this.myMessageHandler.sendMessage(m); break; }else{ Message m = new Message(); m.arg1 = count; m.what = MainActivity.CONTINUE; MainActivity.this.myMessageHandler.sendMessage(m); } }catch(Exception ex){ ex.printStackTrace(); } } } }).start(); } } private Handler myMessageHandler = new Handler(){ public void handleMessage(Message msg){ switch(msg.what){ case MainActivity.STOP: myprobarA.setVisibility(View.GONE); myprobarB.setVisibility(View.GONE); myprobarC.setVisibility(View.GONE); myprobarD.setVisibility(View.GONE); myprobarE.setVisibility(View.GONE); Thread.currentThread().interrupt(); break; case MainActivity.CONTINUE: if(!Thread.currentThread().isInterrupted()){ myprobarA.setProgress(msg.arg1); myprobarB.setProgress(msg.arg1); myprobarC.setProgress(msg.arg1); myprobarD.setProgress(msg.arg1); myprobarE.setProgress(msg.arg1); } break; } } };}运行效果:
以上就是对 Android 进度条的知识整理,后续继续补充相关知识,谢谢大家对本站的支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了Android开发使用ProgressBar实现进度条功能。分享给大家供大家参考,具体如下:进度条ProgressBar的使用主要有两种方向;1.
进度条样式在项目中经常可以见到,下面小编给大家分享Android三种方式实现ProgressBar自定义圆形进度条。Android进度条有4种风格可以使用。默认
初识进度条ProgressBar软件:AndroidStudio实现:1.点击按钮,进度条隐藏;再次点击,进度条出现。循环2.点击按钮,水平进度条进度呈现并+1
进度条(ProgressBar)的功能与用法,供大家参考,具体内容如下进度条是UI界面中一种实用的UI组件,用于显示一个耗时操作显示出来的百分比,进度条可以动态
本节引言:本节给大家带来的是Android基本UI控件中的ProgressBar(进度条),ProgressBar的应用场景很多,比如用户登录时,后台在发请求,