【问题标题】:How to assign ARGB format (e.g. 0xFFFF0000) value to Kotlin INT如何将 ARGB 格式(例如 0xFFFF0000)值分配给 Kotlin INT
【发布时间】:2019-08-28 12:39:54
【问题描述】:

在 Android 中,RED(在 Java 中)被定义为

@ColorInt public static final int RED         = 0xFFFF0000;

当我们分配如下值时(在 Kotlin 中),一切都很好。

val value: Int = Color.RED 

但是,当我用 0xFFFF0000; 替换 Color.RED

val value: Int = 0xFFFF0000

它会投诉The integer literal does not conform to the expected type Int。我该如何解决仍然可以以 ARGB 格式编写的问题?

注意

我知道如果我们转换为如下签名的 Int,一切正常

val value: Int = -0x10000

但这对我来说太难识别颜色格式值(即 FFFF0000 指的是 ARGB 格式)。

【问题讨论】:

    标签: android kotlin colors


    【解决方案1】:
    val value: Int = 0xFFFF0000.toInt()
    

    请参阅https://youtrack.jetbrains.com/issue/KT-4749

    【讨论】:

      【解决方案2】:

      我建议你使用Color.parseColor:

      val color: Int = Color.parseColor("FFFF0000")
      
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-10-10
        • 2021-12-17
        • 2011-07-19
        • 1970-01-01
        • 2020-07-09
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多