Easy to use, fully functional color picker with compact design based on HSV color model. Project consists two main classes which can be easily extended and suited to user requirements.
- ColorPicker.java - basic color picker which allows user to pick a single color
- MultiColorPicker.java - color picker implementation which allows user to pick multiple colors with adjacent hue value
Color Picker has been implemented as an extension of a View class. This gives a possibility to use it as any other Android component. Following are the most basic usage examples.
Color Picker can be put in layout xml file just like any other component.
<com.chiralcode.colorpicker.ColorPicker
android:id="@+id/colorPicker"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
Example can be found in ColorPickerActivity.java file.
Using Color Picker in dialog requires extending AlertDialog class. Listener interface OnColorSelectedListener is required to return selected color value back to the caller.
ColorPickerDialog colorPickerDialog = new ColorPickerDialog(this, initialColor, new OnColorSelectedListener() {
@Override
public void onColorSelected(int color) {
// do action
}
});
colorPickerDialog.show();
See ColorPickerDialog.java for working sample.
Color Picker can be used also on Preferece Screen. Usage is the same as for any other preferences. You can provide default, initial color value by setting android:defaultValue
attribute. Value selected in dialog will be stored under the key provided with android:key
attribute.
<com.chiralcode.colorpicker.ColorPickerPreference
android:defaultValue="0xffffffff"
android:key="preferenceKeyName"
android:title="@string/pref_name"
android:summary="@string/pref_summary" />
Provided demo implementation extends DialogPreference. See ColorPickerPreference.java.
Code is licensed under the Apache License, Version 2.0.