Android開發自學筆記(Android Studio)—4.5 ProgressBar及其子類,androidprogressbar

來源:互聯網
上載者:User

Android開發自學筆記(Android Studio)—4.5 ProgressBar及其子類,androidprogressbar
一、前言

ProgressBar本身代表了進度條組件,它還派生出了兩個常用的組件:SeekBar和RatingBar,他們的使用方法類似,只是顯示介面有一定的區別。我們看一下API文檔中的說明:

xml屬性名稱 說明 android:animationResolution 動畫逾時時間,必須是整數值,比如“100” android:indeterminate 該屬性設定為true,表示不精確顯示進度 android:indeterminateBehavior 設定當選擇不精確顯示進度時,如何描述到達最大值 android:indeterminateDrawable 設定當選擇不精確顯示進度時,所繪製的drawable對象 android:indeterminateDuration 設定不精確顯示進度的期間 android:indeterminateOnly 設定只採用不精確顯示進度模式(狀態保持模式將不會工作) android:interpolator   android:max 設定進度可以達到的最大值 android:maxHeight 選擇性參數 設定View的最大高度 android:maxWidth 選擇性參數 設定View的最大寬度 android:minHeight 選擇性參數 設定View的最小高度 android:minWidth 選擇性參數 設定View的最小寬度 android:mirrorForRtl 定義如果是否需要反映在RTL模式的相關畫板,預設為false android:progress 設定該進度已完成的進度值 android:progressDrawable 設定該進度條軌道對應的drawable對象 android:secondaryProgress 二級進度條,主要用於緩衝使用的情境

該表格取自API19文檔

進度條支援多種風格,可以直接通過設定style屬性來設定,API中也給出了如下的屬性:

  • Widget.ProgressBar.Horizontal  水平進度條
  • Widget.ProgressBar.Small       小環形進度條
  • Widget.ProgressBar.Large       大環進度條
  • Widget.ProgressBar.Inverse     普通大小的環形進度條
  • Widget.ProgressBar.Small.Inverse 小環形進度條
  • Widget.ProgressBar.Large.Inverse 大環形進度條

另外一種使用方式就是可以使用系統的ATT屬性例如:

  • style="?android:attr/progressBarStyle" 
  • style="?android:attr/progressBarStyleHorizontal" 
  • style="?android:attr/progressBarStyleInverse" 
  • style="?android:attr/progressBarStyleLarge" 
  • style="?android:attr/progressBarStyleLargeInverse" 
  • style="?android:attr/progressBarStyleSmall" 
  • style="?android:attr/progressBarStyleSmallInverse" 
  • style="?android:attr/progressBarStyleSmallTitle" 

例如如下的代碼:

屬性 說明 android:isIndicator 設定該星級評等是否允許使用者該表(true為不允許改變) android:numStars 設定該星級評等條總共有多少星星 android:rating 設定該星級評等條預設的星級 android:stepSize 設定每次最少需要改變多少個星級

我們來做一個簡答的例子來示範這些屬性:

同樣先看一下效果:

然後我們給出布局檔案:

其中max和progress是進度條中的屬性,因為RatingBar本身就是一個特殊的進度條,設定了最大值是100,5顆星顯示,說明一顆星是20,步進0.5,說明一次至少可以選擇半顆星。

後台主要是處理了改變時的監聽器。

 

五、後記

最近雜事繁多,學習的進度減慢了,遇到問題也卡了很久,有些問題需要多深入的學習一下,多看看SDK中的樣本和API文檔。下面的章節會跳過一些簡單控制項的使用,給出SDK中範例程式碼的位置。不再在部落格上浪費空間了。加快學習進度。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.