gpt4 book ai didi

java - 在 Java 文件而不是 xml 中定义颜色常量

转载 作者:行者123 更新时间:2023-11-29 20:23:17 27 4
gpt4 key购买 nike

将颜色定义为 int 常量并静态访问它们,而不是在每次需要它们时从 xml 中提取它们是否存在任何缺陷?

例如,假设我定义了一个名为 AppColors 的类:

public final class AppColors {

private AppColors() { throw new AssertionError(); }

public static final int COLOR_RED_500 = 0xFFF44336;

}

并使用 AppColors.COLOR_RED_500 访问颜色,而通常的路径是 getResources().getColor(R.color.red_500)

除了颜色可能需要定义两次之外,一次是在 xml 中用于布局/主题,另一次是在代码中,以这种方式定义颜色的优点是不需要重复getResources() 调用以及将 Context 参数传递给未从 Context 类继承的类的方法和构造函数的需要。

最佳答案

实际上并没有一个明确的约定。


在这种情况下最重要的是

  • 清晰度
  • 表现
  • 可扩展性

如果在您的情况下,此删除声明重复并使您的代码更清晰,而不影响性能,是的,您可以而且必须使用它

但请注意:这不是一般规则,您必须单独分析每个案例并做出明智的决定,对于其他情况,使用 AppColors 类可能会产生重复或性能问题(如果有很多请求)而不是使用数据库表。

关于java - 在 Java 文件而不是 xml 中定义颜色常量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32885002/

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