我试图在Notes中添加颜色选择器中的颜色并且效果很好..但是如果没有从颜色选择器中选择颜色,它会直接将透明颜色应用于注释...使注释无法看到。如下图所示(注释图像链接)。
代码:
private void setColor() {
colorcalendar = ColorPickerDialog.newInstance(
R.string.color_picker_default_title,
colorChoice(this),
selectedColor,
5,
isTablet(this)? ColorPickerDialog.SIZE_LARGE : ColorPickerDialog.SIZE_XSMALL);
colorcalendar.setOnColorSelectedListener(new ColorPickerSwatch.OnColorSelectedListener() {
@Override
public void onColorSelected(int color) {
selectedColor = color;
}
});
i = colorcalendar.getSelectedColor();
colorcalendar.show(getFragmentManager(), "cal");
}
public static int[] colorChoice(Context context){
int[] mColorChoices=null;
String[] color_array = context.getResources().getStringArray(R.array.default_color_choice_values);
if (color_array!=null && color_array.length>0) {
mColorChoices = new int[color_array.length];
for (int i = 0; i < color_array.length; i++) {
mColorChoices[i] = Color.parseColor(color_array[i]);
}
}
return mColorChoices;
}
如果用户从拾色器中选择了没有颜色,是否有任何设置默认颜色的选项?
答案 0 :(得分:1)
您必须使用任何颜色初始化selectedColor变量。
答案 1 :(得分:0)
如何在ColorPickerDialog.OnColorChangedListener中检查颜色是否透明:
@Override
public void colorChanged(int color) {
if (color == Color.TRANSPARENT)
// set default color
mColor = Color.BLUE;
else mColor = color;
}
这可能有所帮助:http://android.okhelp.cz/color-picker-dialog-android-example/