-2

Is there any way to create color picker in android like in photoshop

4

1 回答 1

0

看看这个 github 项目。这是一个美丽的项目。

https://github.com/QuadFlask/colorpicker

如何添加依赖?

该库未在 Maven Central 中发布,但您可以使用 JitPack

在 allprojects.repositories 中添加远程 maven url

allprojects {
    repositories {
        maven { url "https://jitpack.io" }
    }
}

然后添加一个库依赖

dependencies {
    compile 'com.github.QuadFlask:colorpicker:0.0.13'
}

或者,您可以手动下载 aar 并将其放入项目的 libs 目录中。

并添加依赖

dependencies {
    compile(name:'[arrFileName]', ext:'aar')
}

在发布时查看最新版本

作为一个对话框

ColorPickerDialogBuilder
.with(context)
.setTitle("Choose color")
.initialColor(currentBackgroundColor)
.wheelType(ColorPickerView.WHEEL_TYPE.FLOWER)
.density(12)
.setOnColorSelectedListener(new OnColorSelectedListener() {
    @Override
    public void onColorSelected(int selectedColor) {
        toast("onColorSelected: 0x" + Integer.toHexString(selectedColor));
    }
})
.setPositiveButton("ok", new ColorPickerClickListener() {
    @Override
    public void onClick(DialogInterface dialog, int selectedColor, Integer[] allColors) {
        changeBackgroundColor(selectedColor);
    }
})
.setNegativeButton("cancel", new DialogInterface.OnClickListener() {
    @Override
    public void onClick(DialogInterface dialog, int which) {
    }
})
.build()
.show();

作为一个小部件

<com.flask.colorpicker.ColorPickerView
    android:id="@+id/color_picker_view"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:alphaSlider="true"
    app:density="12"
    app:lightnessSlider="true"
    app:wheelType="FLOWER"
    app:lightnessSliderView="@+id/v_lightness_slider"
    app:alphaSliderView="@+id/v_alpha_slider"
    />

<com.flask.colorpicker.slider.LightnessSlider
    android:id="@+id/v_lightness_slider"
    android:layout_width="match_parent"
    android:layout_height="48dp"
    />

<com.flask.colorpicker.slider.AlphaSlider
    android:id="@+id/v_alpha_slider"
    android:layout_width="match_parent"
    android:layout_height="48dp"
    />
于 2017-04-09T06:19:36.290 回答