Android   发布时间:2022-04-28  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了android – 如何根据十六进制颜色代码给出颜色名称?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个代码,只能在图像上的触摸像素上给出十六进制代码.
现在我想给出颜色的名称.
这怎么可能使用 Android?请建议一个方法.

public Boolean onTouch(View v,MotionEvent event) {
                // get x coordinates
                int x = (int) event.getX();
                // get y coordinates
                int y = (int) event.getY();
                // get bitmap in touch listener
                final Bitmap bitmap = ((BitmapDrawablE) image.getDrawable()).getBitmap();
                //xand y coordinates stored in to pixel
                int pixel = bitmap.getPixel(x,y);
                //RGB values
                redValue = Color.red(pixel);
                blueValue = Color.blue(pixel);
                greenValue = Color.green(pixel); 

                SELEcted_colour.setText(""+redValue+""+blueValue+""+greenvalue);
                SELEcted_colour.setText("touched color:" + "#" + Integer.toHexString(redvalue) + Integer.toHexString(greenvalue) + Integer.toHexString(bluevalue));

                SELEcted_colour.setTextColor(pixel);

                return false;
            }
        });

解决方法

你要求的是有点棘手,因为尽管有许多颜色的名字被广泛认同(例如,FFFFFF被称为“白色”无处不在),但大多数其他颜色名称不是全球惯例,而是由正在命名颜色的特定人员.

如此,有几种工具可以做到这一点.查看this link,这是一个可以提供十六进制代码颜色的网站,它将根据最接近的预定义颜色名称列表命名.

您可以查看javascript code并将其改编为Android.这是一个非常简单的算法,它通过测量RGB和HSL中的距离来测量您给预定义颜色列表中最近命中的颜色的距离.

大佬总结

以上是大佬教程为你收集整理的android – 如何根据十六进制颜色代码给出颜色名称?全部内容,希望文章能够帮你解决android – 如何根据十六进制颜色代码给出颜色名称?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。