从 API 级别 < Android 26 (Oreo) 的 RGB 值创建颜色对象

Posted

技术标签:

【中文标题】从 API 级别 < Android 26 (Oreo) 的 RGB 值创建颜色对象【英文标题】:Create Color object from RGB values for API Level < Android 26 (Oreo) 【发布时间】:2020-05-21 19:12:30 【问题描述】:

我正在开发一个安卓项目。我有每个像素的 RGB 值。我想从中创建一个颜色对象。

对于 android API 级别 26 及以上,我们可以使用 Color.valueOf() 方法来为我们完成工作。但它不支持低于 26 的 API 级别。有人可以帮我解决这个问题吗?提前致谢。

【问题讨论】:

【参考方案1】:

很遗憾,这是不可能的。 Per the documentation, Color instances were introduced in Android O,所以在那之前它们不可用。另请注意,Color 上的所有实例方法(例如 red()green()blue() 等)仅在 API 26 及更高版本上可用 - 即使您能够创建实例,您无法从中获取任何信息。

【讨论】:

【参考方案2】:

您可以使用自 API 1 起可用的Color.argb(int, int, int, int)。

示例用法:

Color.argb(255, 255, 0, 0)

它给出没有 alpha 的纯红色。十六进制表示:0xFFFF0000

【讨论】:

这将返回一个int,而不是一个Color 对象。

以上是关于从 API 级别 < Android 26 (Oreo) 的 RGB 值创建颜色对象的主要内容,如果未能解决你的问题,请参考以下文章

Android PlayStore 警告您的应用当前针对 API 级别 25

Android Play 商店最低目标 API 26

如何修复 Android 中的“调用需要 API 级别 26(当前最低为 25)”错误

mapView.onCreate 在 api 级别 26 的cordova android 应用程序中工作正常,但在 api 级别 28 时崩溃

Google Play 控制台目标 SDK 级别 26 要求

如果 Android API 级别低于 26,如何将存储访问框架与 MediaMuxer 一起使用