Android圆环形颜色选择器:HoloColorPicker

jopen 10年前

HoloColorPicker实现圆环形颜色选择器,可以改变颜色饱和度来选择颜色。选择颜色时,可以用手指沿着圆环滑动一个滑块,从而选择颜色。

添加以下XML至你的布局中:

<com.larswerkman.holocolorpicker.ColorPicker      android:id="@+id/picker"      android:layout_width="wrap_content"      android:layout_height="wrap_content"/>

To add a Saturation/Value bar to your layout add this to your xml

<com.larswerkman.holocolorpicker.SVBar      android:id="@+id/svbar"      android:layout_width="wrap_content"      android:layout_height="wrap_content"/>

The same goes for the Opacity bar

<com.larswerkman.holocolorpicker.OpacityBar      android:id="@+id/opacitybar"      android:layout_width="wrap_content"      android:layout_height="wrap_content"/>

Saturation bar

<com.larswerkman.holocolorpicker.SaturationBar      android:id="@+id/saturationbar"      android:layout_width="wrap_content"      android:layout_height="wrap_content"/>

and a Value bar

<com.larswerkman.holocolorpicker.ValueBar      android:id="@+id/valuebar"      android:layout_width="wrap_content"      android:layout_height="wrap_content"/>

To connect the bars with the colorpicker and to get the selected color.

ColorPicker picker = (ColorPicker) findViewById(R.id.picker);  SVBar svBar = (SVBar) findViewById(R.id.svbar);  OpacityBar opacityBar = (OpacityBar) findViewById(R.id.opacitybar);  SaturationBar saturationBar = (SaturationBar) findViewById(R.id.saturationbar);  ValueBar valueBar = (ValueBar) findViewById(R.id.valuebar);    picker.addSVBar(svBar);  picker.addOpacityBar(opacityBar);  picker.addSaturationBar(saturationBar);  picker.addValueBar(valueBar);    //To get the color  picker.getColor();    //To set the old selected color u can do it like this  picker.setOldCenterColor(picker.getColor());  // adds listener to the colorpicker which is implemented  //in the activity  picker.setOnColorChangedListener(this);

framed_colorpicker.png

项目主页:http://www.open-open.com/lib/view/home/1389353422164