我目前正在使用 Google 提供的 ColorPickerDialog.java。我可以让它正确加载,我可以成功选择一种颜色,按中间的圆圈确认,它会正确存储它的信息。
由于对话框使用 Canvas 绘制其元素并使用 Paint 类为所有内容着色,是否有办法从选择中检索 RGB 浮点值?我不知道它是否简单,我只是想念它,但我还不完全熟悉 Android。
如果它有助于可视化我想要实现的目标,我正在使用 ColorPickerDialog.java 让用户选择一种颜色,我想使用该颜色为 OpenGL 中的某些东西着色(所以我需要 float r, float g, float b)
最佳答案
Color类可以处理这些转换。您返回的整数是按位版本,通常编码为 ARGB,但有一些函数可以将其拆分。
import android.graphics.Color;
public class ColorComponents implements OnColorChangedListener {
void colorChanged(int color) {
final int red = Color.red(color);
final int green = Color.green(color);
final int blue = Color.blue(color);
}
}
关于java - 从 ColorPickerDialog.java 中检索颜色信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9389333/