zoukankan      html  css  js  c++  java
  • 显示在标题上的进度条

        还有一种进度条,可以直接在窗口标题上显示,这种进度条甚至不需要使用ProgressBar组件,它是直接由Activity的方法启用的。为了在窗口上显示进度条,需要经过如下步骤。、

        ①调用Activity的requestWindowFeature()方法,该方法根据传入的参数可启用特定的窗口特征,例如传入Window.FEATURE_INDETERMINATE_PROGRESS在窗口标题上显示不带进度的进度条;传入Window.FEATURE_PROGRESS则显示带进度的进度条。

        ②调用Activity的setProgressBarVisibility(boolean)或setProgressBarIndeterminateVisibility(boolean)方法即可控制进度条的显示和隐藏。

        例如下面的程序,界面布局文件如下:

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:orientation="horizontal"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        >
    <Button android:id="@+id/bn1" 
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text=" 显示"/>
    <Button android:id="@+id/bn2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="隐藏"/>
    </LinearLayout>

    该程序的Activity类代码如下:

    package org.crazyit.helloworld;
    
    import android.os.Bundle;
    import android.app.Activity;
    import android.view.Menu;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.view.Window;
    import android.widget.Button;
    
    public class TitleProgressBarTest extends Activity {
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            //设置窗口特征:启用显示进度的进度条
            requestWindowFeature(Window.FEATURE_PROGRESS);
              //设置窗口特征:启用不显示进度的进度条
            requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);
            setContentView(R.layout.title_progress_bar_test);
            Button bn1=(Button)findViewById(R.id.bn1);
            Button bn2=(Button)findViewById(R.id.bn2);
            bn1.setOnClickListener(new OnClickListener(){
    
                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub
                    //显示不带进度的进度条
                    setProgressBarIndeterminateVisibility(true);
                    //显示不带进度的进度条
                    setProgressBarVisibility(true);
                    //设置进度条的进度
                    setProgress(4500);
                }
                
                
            });
            bn2.setOnClickListener(new OnClickListener(){
    
                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub
                    //隐藏不带进度的进度条
                    setProgressBarIndeterminateVisibility(false);
                    //隐藏带进度的进度条
                    setProgressBarVisibility(false);
                }
                
                
            });
        }
    
        @Override
        public boolean onCreateOptionsMenu(Menu menu) {
            // Inflate the menu; this adds items to the action bar if it is present.
            getMenuInflater().inflate(R.menu.title_progress_bar_test, menu);
            return true;
        }
    
    }

    运行上面程序将看到如下效果:

  • 相关阅读:
    <a>與<link>的區別
    103_linux如何安装mysql数据库?
    102_Centos7在虚拟机上开机时出现黑屏,怎么解决?
    101_war和war exploded的区别
    100_linux中passwd文件的用户解析
    099_linux基础命令三
    098_linux基本操作命令二
    097_linux如何配置jdk路径
    096_如何将linux的IP地址转换成静态ip地址?
    078_ip地址.DNS,子网掩码,网关分别是什么,又有什么作用?
  • 原文地址:https://www.cnblogs.com/wolipengbo/p/3385648.html
Copyright © 2011-2022 走看看