【Android开发学习27】界面控件之进度条(ProgressBar)
16lz
2021-12-04
一、基础知识:
1.ProgressBar在界面文件XML中的布局:
<progressBar android:id="@+id/progressbar_updown" android:layout_width="200dp" android:layout_height="wrap_content" style="?android:attr/progressBarStyleHorizontal" android:layout_gravity="center_vertical" android:max="100" android:progress="50" android:secondaryProgress="70" >
style="?android:attr/progressBarStyleHorizontal" 设置风格为长形 android:max="100" 最大进度值为100 android:progress="50" 初始化的进度值 android:secondaryProgress="70" 初始化的底层第二个进度值 android:layout_gravity="center_vertical" 垂直居中
2.ProgressBar在代码文件(.java)中的控制使用:
private ProgressBar myProgressBar;//定义ProgressBarmyProgressBar = (ProgressBar) findViewById(R.id.progressbar_updown);//ProgressBar通过ID来从XML中获取myProgressBar.incrementProgressBy(5);//ProgressBar进度值增加5myProgressBar.incrementProgressBy(-5);//ProgressBar进度值减少5myProgressBar.incrementSecondaryProgressBy(5);//ProgressBar背后的第二个进度条 进度值增加5myProgressBar.incrementSecondaryProgressBy(-5);//ProgressBar背后的第二个进度条 进度值减少5
3.XML重要属性
android:progressBarStyle:默认进度条样式
android:progressBarStyleHorizontal:水平样式
4.重要方法
getMax():返回这个进度条的范围的上限getProgress():返回进度getSecondaryProgress():返回次要进度incrementProgressBy(int diff):指定增加的进度isIndeterminate():指示进度条是否在不确定模式下setIndeterminate(boolean indeterminate):设置不确定模式下setVisibility(int v):设置该进度条是否可视
二、代码展示:
1."Activity_09\src\yan\activity_09\MainActivity.java"
package yan.activity_09;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.ProgressBar;import android.app.Activity;public class MainActivity extends Activity {// 声明变量private ProgressBar firstBar = null;private ProgressBar secondBar = null;private Button myButton = null;private int progress_vol = 0;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);//映射控件ID到变量firstBar = (ProgressBar)findViewById(R.id.firstBar);secondBar = (ProgressBar)findViewById(R.id.secondBar);myButton = (Button)findViewById(R.id.myButton);myButton.setOnClickListener(new ButtonListenr());}class ButtonListenr implements OnClickListener{@Overridepublic void onClick(View v) {// TODO Auto-generated method stubif(0 == progress_vol){// 设置进度条的最大值firstBar.setMax(200);// 设置进度条为可见的状态firstBar.setVisibility(View.VISIBLE);secondBar.setVisibility(View.VISIBLE);}else if(progress_vol < firstBar.getMax()){// 设置主进度条的当前值firstBar.setProgress(progress_vol);// 设置第二进度条的当前值firstBar.setSecondaryProgress(progress_vol+10);// 默认的进度条是无法显示进行的状态的//secondBar.setProgress(progress_vol);}else{// 设置进度条为不可见的状态firstBar.setVisibility(View.GONE);secondBar.setVisibility(View.GONE);}progress_vol +=10;}}}
2."Activity_09\res\layout\main.xml"
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="#00aaaa" > <TextViewandroid:id="@+id/firstText" android:text="@string/hello_world" android:gravity="center_vertical" android:textSize="15pt" android:background="#aa0000" android:layout_width="fill_parent" android:layout_height="wrap_content" android:singleLine="true"/> <ProgressBar android:id="@+id/firstBar" style="?android:attr/progressBarStyleHorizontal" android:layout_width="200dp" android:layout_height="wrap_content" android:visibility="gone" /><ProgressBar android:id="@+id/secondBar" style="?android:attr/progressBarStyle" android:layout_width="wrap_content" android:layout_height="wrap_content" android:visibility="gone" /><Button android:id="@+id/myButton" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="begin" /></LinearLayout>
3."Activity_09\res\values\strings.xml"
<?xml version="1.0" encoding="utf-8"?><resources> <string name="app_name">Activity_09</string> <string name="hello_world">Hello world!</string> <string name="menu_settings">Settings</string></resources>
三、效果展示:
本文完整代码下载地址:http://download.csdn.net/detail/ypist/5146876
拓展阅读文章: 花样Android ProgressBar 史上最强大讲解
Android学习笔记之progressBar(进度条)
本文博客源地址:http://blog.csdn.net/ypist
更多相关文章
- 相对布局RelativeLayout的妙用:提示标签在输入框内
- Android中RemoteViews的实现
- 界面编程之基本界面组件(5)ToggleButton(状态开关按钮)
- 深度解析Android中字体设置
- android EditText 全面阐述
- Android(安卓)滚动条属性
- EditText使用小结
- android EditText 全面阐述
- Android(安卓)EditText 属性汇总