ColorPicker
English | 中文
A ColorPicker
for Android. Pick a color using color wheel and slider (HSV & alpha).
Gradle
dependencies {
implementation 'com.github.duanhong169:colorpicker:${latestVersion}'
...
}
Replace
${latestVersion}
with the latest version code. See releases.
Usage
Using ColorPickerPopup
new ColorPickerPopup.Builder(this)
.initialColor(Color.RED) // Set initial color
.enableBrightness(true) // Enable brightness slider or not
.enableAlpha(true) // Enable alpha slider or not
.okTitle("Choose")
.cancelTitle("Cancel")
.showIndicator(true)
.showValue(true)
.build()
.show(v, new ColorPickerPopup.ColorPickerObserver() {
@Override
public void onColorPicked(int color) {
v.setBackgroundColor(color);
}
@Override
public void onColor(int color, boolean fromUser) {
}
});
Using ColorPickerView
- Add
ColorPickerView
into your layout xml:
<top.defaults.colorpicker.ColorPickerView
android:id="@+id/colorPicker"
android:layout_width="0dp"
android:layout_height="wrap_content"
app:enableBrightness="true"
app:enableAlpha="true"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"/>
See
top_defaults_view_color_picker_attrs.xml
for all supported attributes.
- Implement
ColorObserver
and subscribe toColorPickerView
to receive color updates from theColorPickerView
:
colorPickerView.subscribe((color, fromUser) -> {
// use the color
});
- Set initial color:
colorPickerView.setInitialColor(0x7F313C93);
- Reset to initial color:
colorPickerView.reset();
See a complete usage in the app sample code.
License
Copyright 2018 Hong Duan
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.