[Android] ProgressBar で進捗状況を表示する

Web表示などネット接続には時間がかかることもあります。ロード中とユーザーに知らせアプリが止まっていると勘違いされないようにしたい時には、ProgressBarを使うのが常套手段です。
 
progressbar 01b - [Android] ProgressBar で進捗状況を表示する

Android Studio 3.1.3
Android 8.1.0

 



ProgressBar

 
ProgressBarはいくつかのstyleがあり、またコードを書かなくてもレイアウトで設定するだけで動きます。

  • Widget.ProgressBar.Horizontal
  • Widget.ProgressBar.Small
  • Widget.ProgressBar.Large
  • Widget.ProgressBar.Inverse
  • Widget.ProgressBar.Small.Inverse
  • Widget.ProgressBar.Large.Inverse

これらのstyleがあります。
 

 

Widget.ProgressBar

 
例えば、4つのstyleで試してみます。
activity_main.xml

 

 

Themeからのstyle

 
また、古い情報ではThemeのstyleを使うこともできるようです。
 
activity_main.xml

 
progressbar 02 - [Android] ProgressBar で進捗状況を表示する
 
これは Theme.AppCompat.Light.DarkActionBar をThemeとして設定している場合です。
また 「?android… 」としないと呼び出されません

 
Themeを変えるとどうなるのでしょうか、全画面に使うThemeの @android:style/Theme.NoTitleBar を設定してみるとこのようになりました。
 
progressbar 01b - [Android] ProgressBar で進捗状況を表示する

 

VISIBLE と INVISIBLE

 
例えば、ロードが始まったらProgressBarを表示させておき、終わりがわからない場合は進捗が表示できないのでそのままとして、終わった時に非表示にすればいいのではないでしょうか。
 
表示・非表示はこれらを使います。

 
MainActivity.java

 
activity_main.xml

 
strings.xml

 

ProgressBar.Horizontal

 
一方で、進捗がわかる場合もあります。ProgressBar.Horizontalを使うとそのprogressをユーザーに提示できます。
 
レイアウトでindeterminateをfalseにする必要があります。
 

 
また進捗はメソッドの
setProgress()
を使います。
 
MainActivity.java

 
activity_main.xml

 
strings.xml

 

 
ボタンをタップする毎にMaxまで10増加させられます。
 
 
Reference:
ProgressBar | Android Developers

誤字脱字、意味不明で分からにゃイ、
などのご意見はこちらから mailフォーム

ブックマークしておくと便利です このエントリーをはてなブックマークに追加


 


ページのトップへ戻る




シェアする

  • このエントリーをはてなブックマークに追加

フォローする