【发布时间】:2015-08-31 16:52:53
【问题描述】:
我正在尝试为我的 Android 应用创建自定义调色板。我是这样开始的:
public class Theme {
public static final class DARK {
final static int POSITIVE_GREEN = Color.rgb(0, 200, 0);
final static int NEGATIVE_RED = Color.rgb(200, 0, 0);
final static int BACKGROUND_GREEN = Color.argb(255 - 220, 0, 255, 0); //220
final static int BACKGROUND_RED = Color.argb(255 - 220, 255, 0, 0);
}
public static final class PASTEL {
final static int POSITIVE_GREEN = Color.parseColor("#326262");
final static int NEGATIVE_RED = etc
final static int BACKGROUND_GREEN = etc
final static int BACKGROUND_RED = etc
}
}
但是当我想重构其中一个字段名称时,我意识到有些不对劲。字段名称在主题或其他内容中应该是抽象的,但由于这些不应该是可实例化的类,我不能使用这里建议的构造函数技巧: Why not abstract fields? 我该怎么做?
【问题讨论】:
-
您是否尝试过为此查看枚举?
-
您不能强制开发人员覆盖某个字段。但是,你可以强制他们重写一个方法。
标签: java android field abstract-class color-palette