ProgressBar 컨트롤

4466 단어 android
ProgressBar 컨트롤 (1), 개요    진도 바 (ProgressBar) 는 UI 에서 매우 실 용적 인 컨트롤 입 니 다. 클래스 이름: ProgressBar 는 시간 이 걸 리 는 작업 의 진 도 를 동적 으로 표시 하 는 데 사 용 됩 니 다. 작업 시간 이 길 어서 사용자 가 프로그램 이 응답 을 잃 었 다 고 느끼 지 않도록 사용자 의 사용 체험 을 향상 시 킬 수 있 습 니 다.두 가지 진도 항목 이 있 습 니 다. 기본 진도 항목 (끊임없이 회전) 과 수평 진도 항목 입 니 다.
XML                
max                     
progess                     
secondaryProgress           
progressDrawable                 
progressBarStyle           
progressBarStyleHorizontal           
progressBarStyleLarge          
progressBarStyleSmall          

 progressBar 의 Style 은 다음 과 같은 값 이 있 습 니 다.
horizontal             
inverse                、      
large                
large.inverse            、       
small                
small.inverse            、       

 설명: 1. 이상 의 style 속성 값 앞 에 다음 과 같은 접 두 사 를 붙 여야 합 니 다.    @android: style / Widget. ProgressBar., 예:    @android: style / Widget. PorgressBar. Large: 큰 진도 바 2, Widget: 우리 가 부 르 는 UI 의 컨트롤 은 작은 위 젯 이 라 고도 합 니 다.실례:
MainActivity. java 의 코드:
 
package com.jxust.day03_07;

import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.os.SystemClock;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ProgressBar;

public class MainActivity extends ActionBarActivity {

	ProgressBar mProgressBar;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		initView();
		setListener();

	}

	private void setListener() {
		findViewById(R.id.btnDownload).setOnClickListener(new OnClickListener() {

			@Override
			public void onClick(View v) {
				new Thread() {
					public void run() {
						mProgressBar.setProgress(0);
						for (int i = 0; i <= 100; i++) {
							mProgressBar.setProgress(i);
							SystemClock.sleep(10); //        10  
//        10       :              ,Tread        ,  Tread          
							/*
							 * try{ Thread.sleep(10); }
							 * catch(InterruptedException e){
							 * e.printStackTrace(); }
							 */
						}
					};
				}.start();

			}
		});
	}

	private void initView() {
		mProgressBar = (ProgressBar) findViewById(R.id.pb2);
		mProgressBar.setProgress(0);
	}
}

 
activity_main. xml 코드
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <RelativeLayout
        android:id="@+id/rlBar1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >

        <ProgressBar
            android:id="@+id/pb1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />
    </RelativeLayout>

    <RelativeLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@id/rlBar1"
        android:layout_marginTop="10dp" >

        <ProgressBar
            android:id="@+id/pb2"
            style="@android:style/Widget.ProgressBar.Horizontal"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:max="100"
            android:progress="30" />
        <Button 
            android:layout_marginTop="25dp"
            android:id="@+id/btnDownload"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="Download File"
            />
        
    </RelativeLayout>

</RelativeLayout>

 

좋은 웹페이지 즐겨찾기