gpt4 book ai didi

java - java中改变布局背景颜色之间的差异

转载 作者:行者123 更新时间:2023-12-02 12:01:39 25 4
gpt4 key购买 nike

我是android开发的新手。我有两种方法通过 Java 更改布局背景颜色。哪一个更合适?为什么?

第一种方法是:

LinearLayout layout = (LinearLayout) convertView.findViewById(R.id.translation_container);
layout.setBackgroundColor(mColor);

第二个:

View view = convertView.findViewById(R.id.translation_container);
int color = ContextCompat.getColor(getContext(),mColor);
view.setBackgroundColor(color);

最佳答案

好吧,两者之间有一些非常错误的地方,那就是您正在用一个直接调用 ContextCompat.getColor(getContext(), mColor) 并直接 setBackgroundColor( mColor) 另一个。

ContextCompat.getColor应该用颜色资源 ID 来调用,即。一个R.color.value。它从您的资源中返回与该资源 ID 相对应的颜色值。

根据“mColor”值的不同,这些选项之一很可能没有设置您期望的正确颜色。

如果mColor是颜色资源ID,那么第二个是正确的。如果mColor是您要设置的颜色,则第一个是正确的。

当您将其转换为LinearLayout时,这是不必要的。两个选项都调用相同的方法 View.setBackgroundColor 。您现在可以使用 View 作为 View 变量的类型。

关于java - java中改变布局背景颜色之间的差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47206698/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com