Int RGB 到 HEX 值
Int RGB to HEX values
大家好,我基本上是在构建一个 android 应用程序,可以使用相机显示颜色信息。目前该应用程序正在获取像素信息并在文本视图中显示 RGB 值。我想扩展它并添加一个可以显示十六进制值的文本视图,但我不确定如何转换和显示它。很确定我需要在下面进行更改...
public void pix(){
operation= Bitmap.createBitmap(bmp.getWidth(),
bmp.getHeight(),bmp.getConfig());
int height = bmp.getHeight();
int width = bmp.getWidth();
int p = bmp.getPixel(height / 2, width / 2);
int r = Color.red(p);
int g = Color.green(p);
int b = Color.blue(p);
// Toast.makeText(this, String.valueOf(r) + String.valueOf(g) + String.valueOf(b), Toast.LENGTH_LONG).show();
colourbbox1.setText( String.valueOf(r) + String.valueOf(g) + String.valueOf(b));
colourbbox2.setText( String.valueOf(r) + String.valueOf(g) + String.valueOf(b));
colorbbox2 是预期的文本视图。任何帮助将不胜感激。
(仍然是 java 新手,仅供参考)
您可以使用 Integer.toHexString() :
colourbbox2.setText(Integer.toHexString(r) + Integer.toHexString(g) + Integer.toHexString(b));
尝试:String hexColor = String.format( "#%02x%02x%02x", r, g, b );
将 int 值转换为十六进制表示形式:
String hexadecimal = String.format("#%02X%02X%02X", r, g, b);
添加到您的 TextView:
colourbbox2.setText(hexadecimal);
大家好,我基本上是在构建一个 android 应用程序,可以使用相机显示颜色信息。目前该应用程序正在获取像素信息并在文本视图中显示 RGB 值。我想扩展它并添加一个可以显示十六进制值的文本视图,但我不确定如何转换和显示它。很确定我需要在下面进行更改...
public void pix(){
operation= Bitmap.createBitmap(bmp.getWidth(),
bmp.getHeight(),bmp.getConfig());
int height = bmp.getHeight();
int width = bmp.getWidth();
int p = bmp.getPixel(height / 2, width / 2);
int r = Color.red(p);
int g = Color.green(p);
int b = Color.blue(p);
// Toast.makeText(this, String.valueOf(r) + String.valueOf(g) + String.valueOf(b), Toast.LENGTH_LONG).show();
colourbbox1.setText( String.valueOf(r) + String.valueOf(g) + String.valueOf(b));
colourbbox2.setText( String.valueOf(r) + String.valueOf(g) + String.valueOf(b));
colorbbox2 是预期的文本视图。任何帮助将不胜感激。
(仍然是 java 新手,仅供参考)
您可以使用 Integer.toHexString() :
colourbbox2.setText(Integer.toHexString(r) + Integer.toHexString(g) + Integer.toHexString(b));
尝试:String hexColor = String.format( "#%02x%02x%02x", r, g, b );
将 int 值转换为十六进制表示形式:
String hexadecimal = String.format("#%02X%02X%02X", r, g, b);
添加到您的 TextView:
colourbbox2.setText(hexadecimal);