zoukankan      html  css  js  c++  java
  • Android的ProgressBar以及自定义进度条

    1.xml文件 activity_main.xml 

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical" >
    
        <ProgressBar
            android:id="@+id/progressBar01"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />
    
        <ProgressBar
            android:id="@+id/progressBar02"
            style="?android:attr/progressBarStyleLarge"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />
    
        <ProgressBar
            android:id="@+id/progressBar03"
            style="?android:attr/progressBarStyleSmall"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />
    
        <ProgressBar
            android:id="@+id/progressBar04"
            style="?android:attr/progressBarStyleHorizontal"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:max="100"
            android:progress="20"
            android:secondaryProgress="60" />
    
        <Button
            android:id="@+id/increment"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/increment" />
    
        <Button
            android:id="@+id/decrement"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/decrement" />
    
        <Button
            android:id="@+id/showDialog"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:onClick="showDialog"
            android:text="@string/showDialog" />
    
        <ProgressBar
            android:id="@+id/progressBar05"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:indeterminateDrawable="@drawable/pb_custom" />
    
    </LinearLayout>
    

      2.string.xml

    <?xml version="1.0" encoding="utf-8"?>
    <resources>
    
        <string name="app_name">Android_019</string>
        <string name="action_settings">Settings</string>
        <string name="hello_world">Hello world!</string>
        
        <string name="increment">增加</string>
        <string name="decrement">减少</string>
        <string name="showDialog">显示进度条对话框</string>
    
    </resources>
    

      3.MainActivity.java

    package com.example.android_019;
    
    import android.os.Bundle;
    import android.app.Activity;
    import android.app.ProgressDialog;
    import android.view.Menu;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.view.Window;
    import android.widget.Button;
    import android.widget.ProgressBar;
    
    /**
     * 进度条的实现方法
     * @author hbj403
     */
    public class MainActivity extends Activity implements OnClickListener{
    
    	private Button btnIncrement,btnDecrement;
    	private ProgressBar pb01;
    	
    	@Override
    	protected void onCreate(Bundle savedInstanceState) {
    		super.onCreate(savedInstanceState);
    		
    		//设置标题栏进度条 注意 一定要在setContentView方法之前定义
    		requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);
    		
    		setContentView(R.layout.activity_main);
    		
    		//设置标题栏为启动接可见
    		setProgressBarIndeterminateVisibility(true);
    		
    		btnIncrement=(Button) findViewById(R.id.increment);
    		btnIncrement.setOnClickListener(this);
    		
    		btnDecrement=(Button) findViewById(R.id.decrement);
    		btnDecrement.setOnClickListener(this);
    		
    		pb01=(ProgressBar) findViewById(R.id.progressBar04);
    		
    	}
    
    	@Override
    	public boolean onCreateOptionsMenu(Menu menu) {
    		getMenuInflater().inflate(R.menu.main, menu);
    		return true;
    	}
    
    	@Override
    	public void onClick(View v) {
    		switch (v.getId()) {
    		case R.id.increment:
    			pb01.incrementProgressBy(10);
    			pb01.setSecondaryProgress(40);
    			break;
    		case R.id.decrement:
    			pb01.incrementProgressBy(-10);
    			pb01.setSecondaryProgress(-40);
    			break;
    		default:
    			break;
    		}
    	}
    	
    	//显示对话框进度条
    	public void showDialog(View view){
    		//ProgressDialog.show(this, "标题", "文件正在下载中...", true, true); 直接设置对话框的属性
    		
    		ProgressDialog pd=new ProgressDialog(this);
    		
    		pd.setIcon(R.drawable.ic_launcher);
    		pd.setTitle("下载对话框");
    		pd.setMessage("文件正在下载中...");
    		pd.setMax(100);
    		//设置对对话框的样式
    		pd.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
    		
    		pd.show();
    		
    	}
    
    }
    

      4.图片Z1

         5.显示效果

  • 相关阅读:
    时空地图TimeGIS 可编辑ArcGIS的Shape矢量文件的地理信息系统
    快手 KSCAD 5.0 矢量图形设计软件
    DWG2SHP DXF2SHP 如何把AutoCAD的DWG,DXF文件转换为Esri ArcGIS的Shape文件
    火了网址
    GIS 网站参考
    快手4.0 (KSCAD)
    用词法分析器Flex过滤日志
    编译器工具 Flex Bison for Windows 简单入门例子
    针对于网络安全领域中基于PCAP流量的数据集
    RBAC权限框架_MVC权限框架
  • 原文地址:https://www.cnblogs.com/xrhou12326/p/4460686.html
Copyright © 2011-2022 走看看