以十六进制获取视图的背景颜色

时间:2017-12-25 12:32:35

标签: android user-interface view colors background

我希望以十六进制格式获取视图的背景色。

例如,考虑int getViewBackgroundColor(View view)我的例外回报率为0Xff256e78

我怎么能这样做?

感谢。

3 个答案:

答案 0 :(得分:2)

ColorDrawable buttonColor = (ColorDrawable) myView.getBackground();
int colorId = buttonColor.getColor();

获得整数类型的颜色后,你必须将其转换为hexa

LinearLayout layout = (LinearLayout) findViewById(R.id.lay1);
ColorDrawable viewColor = (ColorDrawable) layoutgetBackground();
int colorId = viewColor.getColor();

希望这会有所帮助..

答案 1 :(得分:1)

以下代码将获取视图的背景颜色并将其转换为颜色的int表示形式。

console.log("res data: " +res.data)

答案 2 :(得分:0)

以下是科特林语言的答案:

var view: View = findViewById(R.id.bg_view_id)
var draw: ColorDrawable = view.background as ColorDrawable
var color_id = draw.getColor()

Log.i("UYARI-INFO: ", Integer.toHexString(color_id))

Logcat中的输出将是:

I/UYARI-INFO:: ffffd8af