https://github.com/techery/progresshint
ProgressBar/SeekBar delegate to show floating progress with style
https://github.com/techery/progresshint
Last synced: about 1 year ago
JSON representation
ProgressBar/SeekBar delegate to show floating progress with style
- Host: GitHub
- URL: https://github.com/techery/progresshint
- Owner: techery
- License: apache-2.0
- Created: 2015-06-03T09:38:34.000Z (almost 11 years ago)
- Default Branch: master
- Last Pushed: 2023-08-07T18:42:08.000Z (almost 3 years ago)
- Last Synced: 2025-05-07T20:18:51.665Z (about 1 year ago)
- Language: Java
- Size: 924 KB
- Stars: 373
- Watchers: 46
- Forks: 57
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ProgressHint
ProgressBar/SeekBar delegate to show floating progress with style


## Description
+ ``Library`` module provides a basic abstract ``ProgressHintDelegate`` which in conjunction with ``SeekBar``
could show current progress in a floating styled window.
+ ``Library-addition`` module implements ``SeekBar`` and ``VerticalSeekBar`` with delegate support.
## Getting Started
**1)** In your `build.gradle`:
```gradle
repositories {
jcenter()
maven { url "https://jitpack.io" }
}
dependencies {
compile 'com.github.techery.progresshint:library-addition:{jitpack-release}'
}
```
**2)** In view XML
```xml
```
or
```xml
```
__Available attributes__
+ ``popupLayout``: layout to be used, must include ``android:id/text1 TextView``
+ ``popupStyle``: can be ``fixed`` or ``follow``, default `follow`
+ ``popupAnimationStyle``: in/out animation, default `fade`
+ ``popupOffset``: distance from top/right of the widget to popup, default `0`
+ ``popupAlwaysShown``: do not dismiss popup after _onStopTrackingTouch_, default `false`
+ ``popupDraggable``: enables progress change by hint popup dragging, default `true`
**3)** Optionally customize the displayed text in Java code:
```java
SeekBarHintDelegateHolder seekBar = (SeekBarHintDelegateHolder) findViewById(R.id.seekBar);
seekBar.getHintDelegate()
.setHintAdapter(new SeekBarHintAdapter() {
@Override public String getHint(android.widget.SeekBar seekBar, int progress) {
return "Progress: " + String.valueOf(progress);
}
});
```
**4)** Optionally use `Theme` attribute
```xml
<item name="progressHintStyle">@style/Widget.ProgressHint</item>
```
**5)** Optionally if inside ScrollView
Use `ProgressHintScrollController` to hide & show popup properly on scrolling.
See [Sample's Activity](https://github.com/techery/progresshint/blob/master/sample/src/main/java/com/example/progresshint/ScrollActivity.java) for details
#### Additionally
- [x] Supports AndroidX
## Credits
Thanks to
+ @moondroid for [inspiration](https://github.com/moondroid/SeekBarHint)
+ @h6ah4i for [VerticalSeekBar](https://github.com/h6ah4i/android-verticalseekbar)
## License
Copyright (c) 2015 Techery
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.