从 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 中的“调用需要 API 级别 26(当前最低为 25)”错误
mapView.onCreate 在 api 级别 26 的cordova android 应用程序中工作正常,但在 api 级别 28 时崩溃