java.lang.Object | ||
↳ | android.view.View | |
↳ | android.widget.ProgressBar |
Known Direct Subclasses |
Known Indirect Subclasses |
Visual indicator of progress in some operation. Displays a bar to the user representing how far the operation has progressed; the application can change the amount of progress (modifying the length of the bar) as it moves forward. There is also a secondary progress displayable on a progress bar which is useful for displaying intermediate progress, such as the buffer level during a streaming playback progress bar.
A progress bar can also be made indeterminate. In indeterminate mode, the progress bar shows a cyclic animation without an indication of progress. This mode is used by applications when the length of the task is unknown. The indeterminate progress bar can be either a spinning wheel or a horizontal bar.
The following code example shows how a progress bar can be used from a worker thread to update the user interface to notify the user of progress:
public class MyActivity extends Activity { private static final int PROGRESS = 0x1; private ProgressBar mProgress; private int mProgressStatus = 0; private Handler mHandler = new Handler(); protected void onCreate(Bundle icicle) { super.onCreate(icicle); setContentView(R.layout.progressbar_activity); mProgress = (ProgressBar) findViewById(R.id.progress_bar); // Start lengthy operation in a background thread new Thread(new Runnable() { public void run() { while (mProgressStatus < 100) { mProgressStatus = doWork(); // Update the progress bar mHandler.post(new Runnable() { public void run() { mProgress.setProgress(mProgressStatus); } }); } } }).start(); } }
To add a progress bar to a layout file, you can use the <ProgressBar>
element.
By default, the progress bar is a spinning wheel (an indeterminate indicator). To change to a
horizontal progress bar, apply the Widget.ProgressBar.Horizontal
style, like so:
<ProgressBar style="@android:style/Widget.ProgressBar.Horizontal" ... />
If you will use the progress bar to show real progress, you must use the horizontal bar. You
can then increment the progress with incrementProgressBy()
or
setProgress()
. By default, the progress bar is full when it reaches 100. If
necessary, you can adjust the maximum value (the value for a full bar) using the android:max
attribute. Other attributes available are listed
below.
Another common style to apply to the progress bar is Widget.ProgressBar.Small
, which shows a smaller
version of the spinning wheel—useful when waiting for content to load.
For example, you can insert this kind of progress bar into your default layout for
a view that will be populated by some content fetched from the Internet—the spinning wheel
appears immediately and when your application receives the content, it replaces the progress bar
with the loaded content. For example:
<LinearLayout android:orientation="horizontal" ... > <ProgressBar android:layout_width="wrap_content" android:layout_height="wrap_content" style="@android:style/Widget.ProgressBar.Small" android:layout_marginRight="5dp" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/loading" /> </LinearLayout>
Other progress bar styles provided by the system include:
Widget.ProgressBar.Horizontal
Widget.ProgressBar.Small
Widget.ProgressBar.Large
Widget.ProgressBar.Inverse
Widget.ProgressBar.Small.Inverse
Widget.ProgressBar.Large.Inverse
The "inverse" styles provide an inverse color scheme for the spinner, which may be necessary if your application uses a light colored theme (a white background).
XML attributes
XML Attributes | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
android:animationResolution |
Timeout between frames of animation in milliseconds
Must be an integer value, such as " |
||||||||||
android:indeterminate | Allows to enable the indeterminate mode. | ||||||||||
android:indeterminateBehavior | Defines how the indeterminate mode should behave when the progress reaches max. | ||||||||||
android:indeterminateDrawable | Drawable used for the indeterminate mode. | ||||||||||
android:indeterminateDuration | Duration of the indeterminate animation. | ||||||||||
android:indeterminateOnly | Restricts to ONLY indeterminate mode (state-keeping progress mode will not work). | ||||||||||
android:indeterminateTint | setIndeterminateTintList(ColorStateList) | Tint to apply to the indeterminate progress indicator. | |||||||||
android:indeterminateTintMode | setIndeterminateTintMode(PorterDuff.Mode) | Blending mode used to apply the indeterminate progress indicator tint. | |||||||||
android:interpolator | |||||||||||
android:max | Defines the maximum value the progress can take. | ||||||||||
android:maxHeight | An optional argument to supply a maximum height for this view. | ||||||||||
android:maxWidth | An optional argument to supply a maximum width for this view. | ||||||||||
android:minHeight | |||||||||||
android:minWidth | |||||||||||
android:mirrorForRtl | Defines if the associated drawables need to be mirrored when in RTL mode. | ||||||||||
android:progress | Defines the default progress value, between 0 and max. | ||||||||||
android:progressBackgroundTint | setProgressBackgroundTintList(ColorStateList) | Tint to apply to the progress indicator background. | |||||||||
android:progressBackgroundTintMode | setProgressBackgroundTintMode(PorterDuff.Mode) | Blending mode used to apply the progress indicator background tint. | |||||||||
android:progressDrawable | Drawable used for the progress mode. | ||||||||||
android:progressTint | setProgressTintList(ColorStateList) | Tint to apply to the progress indicator. | |||||||||
android:progressTintMode | setProgressTintMode(PorterDuff.Mode) | Blending mode used to apply the progress indicator tint. | |||||||||
android:secondaryProgress | Defines the secondary progress value, between 0 and max. | ||||||||||
android:secondaryProgressTint | setSecondaryProgressTintList(ColorStateList) | Tint to apply to the secondary progress indicator. | |||||||||
android:secondaryProgressTintMode | setSecondaryProgressTintMode(PorterDuff.Mode) | Blending mode used to apply the secondary progress indicator tint. |
[Expand]
Inherited XML Attributes | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
From class
android.view.View
|
[Expand]
Inherited Constants | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
From class
android.view.View
|
[Expand]
Inherited Fields | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
From class
android.view.View
|
Public Constructors | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Create a new progress bar with range 0...100 and initial progress of 0.
| |||||||||||
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
This function is called whenever the view hotspot changes and needs to
be propagated to drawables or child views managed by the view.
| |||||||||||
Get the drawable used to draw the progress bar in indeterminate mode. | |||||||||||
Returns the blending mode used to apply the tint to the indeterminate
drawable, if specified.
| |||||||||||
Gets the acceleration curve type for the indeterminate animation.
| |||||||||||
Return the upper limit of this progress bar's range. | |||||||||||
Get the progress bar's current level of progress. | |||||||||||
Returns the tint applied to the progress background, if specified.
| |||||||||||
Get the drawable used to draw the progress bar in progress mode. | |||||||||||
Returns the tint applied to the progress drawable, if specified.
| |||||||||||
Returns the blending mode used to apply the tint to the progress
drawable, if specified.
| |||||||||||
Get the progress bar's current level of secondary progress. | |||||||||||
Returns the tint applied to the secondary progress drawable, if
specified.
| |||||||||||
Returns the blending mode used to apply the tint to the secondary
progress drawable, if specified.
| |||||||||||
Increase the progress bar's progress by the specified amount. | |||||||||||
Increase the progress bar's secondary progress by the specified amount. | |||||||||||
Invalidates the specified Drawable.
| |||||||||||
Indicate whether this progress bar is in indeterminate mode. | |||||||||||
Call
Drawable.jumpToCurrentState()
on all Drawable objects associated with this view.
| |||||||||||
Initializes an
AccessibilityEvent with information about
this View which is the event source.
| |||||||||||
Initializes an
AccessibilityNodeInfo with information about this view.
| |||||||||||
Hook allowing a view to re-apply a representation of its internal state that had previously
been generated by
onSaveInstanceState() .
| |||||||||||
Hook allowing a view to generate a representation of its internal state
that can later be used to create a new instance with that same state.
| |||||||||||
Cause an invalidate to happen on a subsequent cycle through the event loop. | |||||||||||
Change the indeterminate mode for this progress bar. | |||||||||||
Define the drawable used to draw the progress bar in indeterminate mode.
| |||||||||||
Define the tileable drawable used to draw the progress bar in
indeterminate mode.
| |||||||||||
Applies a tint to the indeterminate drawable.
| |||||||||||
Specifies the blending mode used to apply the tint specified by
setIndeterminateTintList(ColorStateList) to the indeterminate
drawable.
| |||||||||||
Sets the acceleration curve for the indeterminate animation.
| |||||||||||
Sets the acceleration curve for the indeterminate animation.
| |||||||||||
Set the range of the progress bar to 0... | |||||||||||
Set the current progress to the specified value. | |||||||||||
Applies a tint to the progress background, if one exists.
| |||||||||||
Specifies the blending mode used to apply the tint specified by
setProgressBackgroundTintList(ColorStateList) } to the progress
background.
| |||||||||||
Define the drawable used to draw the progress bar in progress mode.
| |||||||||||
Define the tileable drawable used to draw the progress bar in
progress mode.
| |||||||||||
Applies a tint to the progress indicator, if one exists, or to the
entire progress drawable otherwise.
| |||||||||||
Specifies the blending mode used to apply the tint specified by
setProgressTintList(ColorStateList) } to the progress
indicator.
| |||||||||||
Set the current secondary progress to the specified value. | |||||||||||
Applies a tint to the secondary progress indicator, if one exists.
| |||||||||||
Specifies the blending mode used to apply the tint specified by
setSecondaryProgressTintList(ColorStateList) } to the secondary
progress indicator.
| |||||||||||
Set the enabled state of this view.
|
Protected Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
This function is called whenever the state of the view changes in such
a way that it impacts the state of drawables being shown.
| |||||||||||
This is called when the view is attached to a window.
| |||||||||||
This is called when the view is detached from a window.
| |||||||||||
Implement this to do your drawing.
| |||||||||||
Measure the view and its content to determine the measured width and the measured height. | |||||||||||
This is called during layout when the size of this view has changed.
| |||||||||||
Called when the visibility of the view or an ancestor of the view is changed.
| |||||||||||
If your view subclass is displaying its own Drawable objects, it should
override this function and return true for any Drawable it is
displaying.
|
[Expand]
Inherited Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
From class
android.view.View
| |||||||||||
From class
java.lang.Object
| |||||||||||
From interface
android.graphics.drawable.Drawable.Callback
| |||||||||||
From interface
android.view.KeyEvent.Callback
| |||||||||||
From interface
android.view.accessibility.AccessibilityEventSource
|
Timeout between frames of animation in milliseconds
Must be an integer value, such as "100
".
This may also be a reference to a resource (in the form
"@[package:]type:name
") or
theme attribute (in the form
"?[package:][type:]name
")
containing a value of this type.
This corresponds to the global attribute
resource symbol animationResolution
.
Allows to enable the indeterminate mode. In this mode the progress bar plays an infinite looping animation.
Must be a boolean value, either "true
" or "false
".
This may also be a reference to a resource (in the form
"@[package:]type:name
") or
theme attribute (in the form
"?[package:][type:]name
")
containing a value of this type.
This corresponds to the global attribute
resource symbol indeterminate
.
Defines how the indeterminate mode should behave when the progress reaches max.
Must be one of the following constant values.
Constant | Value | Description |
---|---|---|
repeat | 1 | Progress starts over from 0. |
cycle | 2 | Progress keeps the current value and goes back to 0. |
This corresponds to the global attribute
resource symbol indeterminateBehavior
.
Drawable used for the indeterminate mode.
Must be a reference to another resource, in the form "@[+][package:]type:name
"
or to a theme attribute in the form "?[package:][type:]name
".
This corresponds to the global attribute
resource symbol indeterminateDrawable
.
Duration of the indeterminate animation.
Must be an integer value, such as "100
".
This may also be a reference to a resource (in the form
"@[package:]type:name
") or
theme attribute (in the form
"?[package:][type:]name
")
containing a value of this type.
This corresponds to the global attribute
resource symbol indeterminateDuration
.
Restricts to ONLY indeterminate mode (state-keeping progress mode will not work).
Must be a boolean value, either "true
" or "false
".
This may also be a reference to a resource (in the form
"@[package:]type:name
") or
theme attribute (in the form
"?[package:][type:]name
")
containing a value of this type.
This corresponds to the global attribute
resource symbol indeterminateOnly
.
Tint to apply to the indeterminate progress indicator.
Must be a color value, in the form of "#rgb
", "#argb
",
"#rrggbb
", or "#aarrggbb
".
This may also be a reference to a resource (in the form
"@[package:]type:name
") or
theme attribute (in the form
"?[package:][type:]name
")
containing a value of this type.
This corresponds to the global attribute
resource symbol indeterminateTint
.
Blending mode used to apply the indeterminate progress indicator tint.
Must be one of the following constant values.
Constant | Value | Description |
---|---|---|
src_over | 3 | The tint is drawn on top of the drawable. [Sa + (1 - Sa)*Da, Rc = Sc + (1 - Sa)*Dc] |
src_in | 5 | The tint is masked by the alpha channel of the drawable. The drawable’s color channels are thrown out. [Sa * Da, Sc * Da] |
src_atop | 9 | The tint is drawn above the drawable, but with the drawable’s alpha channel masking the result. [Da, Sc * Da + (1 - Sa) * Dc] |
multiply | 14 | Multiplies the color and alpha channels of the drawable with those of the tint. [Sa * Da, Sc * Dc] |
screen | 15 | [Sa + Da - Sa * Da, Sc + Dc - Sc * Dc] |
add | 16 | Combines the tint and drawable color and alpha channels, clamping the result to valid color values. Saturate(S + D) |
This corresponds to the global attribute
resource symbol indeterminateTintMode
.
Defines the maximum value the progress can take.
Must be an integer value, such as "100
".
This may also be a reference to a resource (in the form
"@[package:]type:name
") or
theme attribute (in the form
"?[package:][type:]name
")
containing a value of this type.
This corresponds to the global attribute
resource symbol max
.
An optional argument to supply a maximum height for this view. See {see android.widget.ImageView#setMaxHeight} for details.
Must be a dimension value, which is a floating point number appended with a unit such as "14.5sp
".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
This may also be a reference to a resource (in the form
"@[package:]type:name
") or
theme attribute (in the form
"?[package:][type:]name
")
containing a value of this type.
This corresponds to the global attribute
resource symbol maxHeight
.
An optional argument to supply a maximum width for this view. See {see android.widget.ImageView#setMaxWidth} for details.
Must be a dimension value, which is a floating point number appended with a unit such as "14.5sp
".
Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size),
in (inches), mm (millimeters).
This may also be a reference to a resource (in the form
"@[package:]type:name
") or
theme attribute (in the form
"?[package:][type:]name
")
containing a value of this type.
This corresponds to the global attribute
resource symbol maxWidth
.
Defines if the associated drawables need to be mirrored when in RTL mode. Default is false
Must be a boolean value, either "true
" or "false
".
This may also be a reference to a resource (in the form
"@[package:]type:name
") or
theme attribute (in the form
"?[package:][type:]name
")
containing a value of this type.
This corresponds to the global attribute
resource symbol mirrorForRtl
.
Defines the default progress value, between 0 and max.
Must be an integer value, such as "100
".
This may also be a reference to a resource (in the form
"@[package:]type:name
") or
theme attribute (in the form
"?[package:][type:]name
")
containing a value of this type.
This corresponds to the global attribute
resource symbol progress
.
Tint to apply to the progress indicator background.
Must be a color value, in the form of "#rgb
", "#argb
",
"#rrggbb
", or "#aarrggbb
".
This may also be a reference to a resource (in the form
"@[package:]type:name
") or
theme attribute (in the form
"?[package:][type:]name
")
containing a value of this type.
This corresponds to the global attribute
resource symbol progressBackgroundTint
.
Blending mode used to apply the progress indicator background tint.
Must be one of the following constant values.
Constant | Value | Description |
---|---|---|
src_over | 3 | The tint is drawn on top of the drawable. [Sa + (1 - Sa)*Da, Rc = Sc + (1 - Sa)*Dc] |
src_in | 5 | The tint is masked by the alpha channel of the drawable. The drawable’s color channels are thrown out. [Sa * Da, Sc * Da] |
src_atop | 9 | The tint is drawn above the drawable, but with the drawable’s alpha channel masking the result. [Da, Sc * Da + (1 - Sa) * Dc] |
multiply | 14 | Multiplies the color and alpha channels of the drawable with those of the tint. [Sa * Da, Sc * Dc] |
screen | 15 | [Sa + Da - Sa * Da, Sc + Dc - Sc * Dc] |
add | 16 | Combines the tint and drawable color and alpha channels, clamping the result to valid color values. Saturate(S + D) |
This corresponds to the global attribute
resource symbol progressBackgroundTintMode
.
Drawable used for the progress mode.
Must be a reference to another resource, in the form "@[+][package:]type:name
"
or to a theme attribute in the form "?[package:][type:]name
".
This corresponds to the global attribute
resource symbol progressDrawable
.
Tint to apply to the progress indicator.
Must be a color value, in the form of "#rgb
", "#argb
",
"#rrggbb
", or "#aarrggbb
".
This may also be a reference to a resource (in the form
"@[package:]type:name
") or
theme attribute (in the form
"?[package:][type:]name
")
containing a value of this type.
This corresponds to the global attribute
resource symbol progressTint
.
Blending mode used to apply the progress indicator tint.
Must be one of the following constant values.
Constant | Value | Description |
---|---|---|
src_over | 3 | The tint is drawn on top of the drawable. [Sa + (1 - Sa)*Da, Rc = Sc + (1 - Sa)*Dc] |
src_in | 5 | The tint is masked by the alpha channel of the drawable. The drawable’s color channels are thrown out. [Sa * Da, Sc * Da] |
src_atop | 9 | The tint is drawn above the drawable, but with the drawable’s alpha channel masking the result. [Da, Sc * Da + (1 - Sa) * Dc] |
multiply | 14 | Multiplies the color and alpha channels of the drawable with those of the tint. [Sa * Da, Sc * Dc] |
screen | 15 | [Sa + Da - Sa * Da, Sc + Dc - Sc * Dc] |
add | 16 | Combines the tint and drawable color and alpha channels, clamping the result to valid color values. Saturate(S + D) |
This corresponds to the global attribute
resource symbol progressTintMode
.
Defines the secondary progress value, between 0 and max. This progress is drawn between the primary progress and the background. It can be ideal for media scenarios such as showing the buffering progress while the default progress shows the play progress.
Must be an integer value, such as "100
".
This may also be a reference to a resource (in the form
"@[package:]type:name
") or
theme attribute (in the form
"?[package:][type:]name
")
containing a value of this type.
This corresponds to the global attribute
resource symbol secondaryProgress
.
Tint to apply to the secondary progress indicator.
Must be a color value, in the form of "#rgb
", "#argb
",
"#rrggbb
", or "#aarrggbb
".
This may also be a reference to a resource (in the form
"@[package:]type:name
") or
theme attribute (in the form
"?[package:][type:]name
")
containing a value of this type.
This corresponds to the global attribute
resource symbol secondaryProgressTint
.
Blending mode used to apply the secondary progress indicator tint.
Must be one of the following constant values.
Constant | Value | Description |
---|---|---|
src_over | 3 | The tint is drawn on top of the drawable. [Sa + (1 - Sa)*Da, Rc = Sc + (1 - Sa)*Dc] |
src_in | 5 | The tint is masked by the alpha channel of the drawable. The drawable’s color channels are thrown out. [Sa * Da, Sc * Da] |
src_atop | 9 | The tint is drawn above the drawable, but with the drawable’s alpha channel masking the result. [Da, Sc * Da + (1 - Sa) * Dc] |
multiply | 14 | Multiplies the color and alpha channels of the drawable with those of the tint. [Sa * Da, Sc * Dc] |
screen | 15 | [Sa + Da - Sa * Da, Sc + Dc - Sc * Dc] |
add | 16 | Combines the tint and drawable color and alpha channels, clamping the result to valid color values. Saturate(S + D) |
This corresponds to the global attribute
resource symbol secondaryProgressTintMode
.
Create a new progress bar with range 0...100 and initial progress of 0.
context | the application environment |
---|
This function is called whenever the view hotspot changes and needs to be propagated to drawables or child views managed by the view.
Dispatching to child views is handled by
dispatchDrawableHotspotChanged(float, float)
.
Be sure to call through to the superclass when overriding this function.
x | hotspot x coordinate |
---|---|
y | hotspot y coordinate |
Get the drawable used to draw the progress bar in indeterminate mode.
Drawable
instanceReturns the blending mode used to apply the tint to the indeterminate drawable, if specified.
Gets the acceleration curve type for the indeterminate animation.
Interpolator
associated to this animation
Return the upper limit of this progress bar's range.
Get the progress bar's current level of progress. Return 0 when the progress bar is in indeterminate mode.
getMax()
Returns the tint applied to the progress background, if specified.
Get the drawable used to draw the progress bar in progress mode.
Drawable
instanceReturns the tint applied to the progress drawable, if specified.
Returns the blending mode used to apply the tint to the progress drawable, if specified.
Get the progress bar's current level of secondary progress. Return 0 when the progress bar is in indeterminate mode.
getMax()
Returns the tint applied to the secondary progress drawable, if specified.
Returns the blending mode used to apply the tint to the secondary progress drawable, if specified.
Increase the progress bar's progress by the specified amount.
diff | the amount by which the progress must be increased |
---|
Increase the progress bar's secondary progress by the specified amount.
diff | the amount by which the secondary progress must be increased |
---|
Invalidates the specified Drawable.
dr | the drawable to invalidate |
---|
Indicate whether this progress bar is in indeterminate mode.
Call Drawable.jumpToCurrentState()
on all Drawable objects associated with this view.
Also calls jumpToCurrentState()
if there is a StateListAnimator
attached to this view.
Initializes an AccessibilityEvent
with information about
this View which is the event source. In other words, the source of
an accessibility event is the view whose state change triggered firing
the event.
Example: Setting the password property of an event in addition to properties set by the super implementation:
public void onInitializeAccessibilityEvent(AccessibilityEvent event) { super.onInitializeAccessibilityEvent(event); event.setPassword(true); }
If an View.AccessibilityDelegate
has been specified via calling
setAccessibilityDelegate(AccessibilityDelegate)
its
onInitializeAccessibilityEvent(View, AccessibilityEvent)
is responsible for handling this call.
Note: Always call the super implementation before adding information to the event, in case the default implementation has basic information to add.
event | The event to initialize. |
---|
Initializes an AccessibilityNodeInfo
with information about this view.
The base implementation sets:
setParent(View)
,setBoundsInParent(Rect)
,setBoundsInScreen(Rect)
,setPackageName(CharSequence)
,setClassName(CharSequence)
,setContentDescription(CharSequence)
,setEnabled(boolean)
,setClickable(boolean)
,setFocusable(boolean)
,setFocused(boolean)
,setLongClickable(boolean)
,setSelected(boolean)
,Subclasses should override this method, call the super implementation, and set additional attributes.
If an View.AccessibilityDelegate
has been specified via calling
setAccessibilityDelegate(AccessibilityDelegate)
its
onInitializeAccessibilityNodeInfo(View, AccessibilityNodeInfo)
is responsible for handling this call.
info | The instance to initialize. |
---|
Hook allowing a view to re-apply a representation of its internal state that had previously
been generated by onSaveInstanceState()
. This function will never be called with a
null state.
state | The frozen state that had previously been returned by
onSaveInstanceState() . |
---|
Hook allowing a view to generate a representation of its internal state that can later be used to create a new instance with that same state. This state should only contain information that is not persistent or can not be reconstructed later. For example, you will never store your current position on screen because that will be computed again when a new instance of the view is placed in its view hierarchy.
Some examples of things you may store here: the current cursor position in a text view (but usually not the text itself since that is stored in a content provider or other persistent storage), the currently selected item in a list view.
Cause an invalidate to happen on a subsequent cycle through the event loop. Use this to invalidate the View from a non-UI thread.
This method can be invoked from outside of the UI thread only when this View is attached to a window.
Change the indeterminate mode for this progress bar. In indeterminate mode, the progress is ignored and the progress bar shows an infinite animation instead.
If this progress bar's style only supports indeterminate mode (such as the circular progress bars), then this will be ignored.indeterminate | true to enable the indeterminate mode |
---|
Define the drawable used to draw the progress bar in indeterminate mode.
d | the new drawable |
---|
Define the tileable drawable used to draw the progress bar in indeterminate mode.
If the drawable is a BitmapDrawable or contains BitmapDrawables, a tiled copy will be generated for display as a progress bar.
d | the new drawable |
---|
Applies a tint to the indeterminate drawable. Does not modify the
current tint mode, which is SRC_IN
by default.
Subsequent calls to setIndeterminateDrawable(Drawable)
will
automatically mutate the drawable and apply the specified tint and
tint mode using
setTintList(ColorStateList)
.
tint | the tint to apply, may be null to clear tint |
---|
Specifies the blending mode used to apply the tint specified by
setIndeterminateTintList(ColorStateList)
to the indeterminate
drawable. The default mode is SRC_IN
.
tintMode | the blending mode used to apply the tint, may be
null to clear tint |
---|
Sets the acceleration curve for the indeterminate animation. The interpolator is loaded as a resource from the specified context.
context | The application environment |
---|---|
resID | The resource identifier of the interpolator to load |
Sets the acceleration curve for the indeterminate animation. Defaults to a linear interpolation.
interpolator | The interpolator which defines the acceleration curve |
---|
Set the range of the progress bar to 0...max.
max | the upper range of this progress bar |
---|
Set the current progress to the specified value. Does not do anything if the progress bar is in indeterminate mode.
progress | the new progress, between 0 and getMax() |
---|
Applies a tint to the progress background, if one exists. Does not
modify the current tint mode, which is
SRC_ATOP
by default.
The progress background must be specified as a layer with
id background
in a LayerDrawable
used as the progress drawable.
Subsequent calls to setProgressDrawable(Drawable)
where the
drawable contains a progress background will automatically mutate the
drawable and apply the specified tint and tint mode using
setTintList(ColorStateList)
.
tint | the tint to apply, may be null to clear tint |
---|
Specifies the blending mode used to apply the tint specified by
setProgressBackgroundTintList(ColorStateList)
} to the progress
background. The default mode is SRC_IN
.
tintMode | the blending mode used to apply the tint, may be
null to clear tint |
---|
Define the drawable used to draw the progress bar in progress mode.
d | the new drawable |
---|
Define the tileable drawable used to draw the progress bar in progress mode.
If the drawable is a BitmapDrawable or contains BitmapDrawables, a tiled copy will be generated for display as a progress bar.
d | the new drawable |
---|
Applies a tint to the progress indicator, if one exists, or to the
entire progress drawable otherwise. Does not modify the current tint
mode, which is SRC_IN
by default.
The progress indicator should be specified as a layer with
id progress
in a LayerDrawable
used as the progress drawable.
Subsequent calls to setProgressDrawable(Drawable)
will
automatically mutate the drawable and apply the specified tint and
tint mode using
setTintList(ColorStateList)
.
tint | the tint to apply, may be null to clear tint |
---|
Specifies the blending mode used to apply the tint specified by
setProgressTintList(ColorStateList)
} to the progress
indicator. The default mode is SRC_IN
.
tintMode | the blending mode used to apply the tint, may be
null to clear tint |
---|
Set the current secondary progress to the specified value. Does not do anything if the progress bar is in indeterminate mode.
secondaryProgress | the new secondary progress, between 0 and getMax() |
---|
Applies a tint to the secondary progress indicator, if one exists.
Does not modify the current tint mode, which is
SRC_ATOP
by default.
The secondary progress indicator must be specified as a layer with
id secondaryProgress
in a LayerDrawable
used as the progress drawable.
Subsequent calls to setProgressDrawable(Drawable)
where the
drawable contains a secondary progress indicator will automatically
mutate the drawable and apply the specified tint and tint mode using
setTintList(ColorStateList)
.
tint | the tint to apply, may be null to clear tint |
---|
Specifies the blending mode used to apply the tint specified by
setSecondaryProgressTintList(ColorStateList)
} to the secondary
progress indicator. The default mode is
SRC_ATOP
.
tintMode | the blending mode used to apply the tint, may be
null to clear tint |
---|
This function is called whenever the state of the view changes in such a way that it impacts the state of drawables being shown.
If the View has a StateListAnimator, it will also be called to run necessary state change animations.
Be sure to call through to the superclass when overriding this function.
This is called when the view is attached to a window. At this point it
has a Surface and will start drawing. Note that this function is
guaranteed to be called before onDraw(android.graphics.Canvas)
,
however it may be called any time before the first onDraw -- including
before or after onMeasure(int, int)
.
This is called when the view is detached from a window. At this point it no longer has a surface for drawing.
Implement this to do your drawing.
canvas | the canvas on which the background will be drawn |
---|
Measure the view and its content to determine the measured width and the
measured height. This method is invoked by measure(int, int)
and
should be overriden by subclasses to provide accurate and efficient
measurement of their contents.
CONTRACT: When overriding this method, you
must call setMeasuredDimension(int, int)
to store the
measured width and height of this view. Failure to do so will trigger an
IllegalStateException
, thrown by
measure(int, int)
. Calling the superclass'
onMeasure(int, int)
is a valid use.
The base class implementation of measure defaults to the background size,
unless a larger size is allowed by the MeasureSpec. Subclasses should
override onMeasure(int, int)
to provide better measurements of
their content.
If this method is overridden, it is the subclass's responsibility to make
sure the measured height and width are at least the view's minimum height
and width (getSuggestedMinimumHeight()
and
getSuggestedMinimumWidth()
).
widthMeasureSpec | horizontal space requirements as imposed by the parent.
The requirements are encoded with
View.MeasureSpec . |
---|---|
heightMeasureSpec | vertical space requirements as imposed by the parent.
The requirements are encoded with
View.MeasureSpec . |
This is called during layout when the size of this view has changed. If you were just added to the view hierarchy, you're called with the old values of 0.
w | Current width of this view. |
---|---|
h | Current height of this view. |
oldw | Old width of this view. |
oldh | Old height of this view. |
If your view subclass is displaying its own Drawable objects, it should override this function and return true for any Drawable it is displaying. This allows animations for those drawables to be scheduled.
Be sure to call through to the super class when overriding this function.
who | The Drawable to verify. Return true if it is one you are displaying, else return the result of calling through to the super class. |
---|