- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
release notes iOS 10 有一个名为Wide Color 的部分。
让我感到困惑的是这一行:如果您的应用依赖 UIKit 来限制组件值(无论您是创建颜色还是为其组件值请求颜色),您需要在链接到 iOS 10 时更改应用的行为。
限制组件值是什么意思??这在 objective-c 或 swift 中是什么样子的?我将如何更新它以符合 iOS 10 中的变化?
最佳答案
该行在上下文中更有意义:
In iOS 10, the
UIColor
class uses the extended sRGB color space and its initializers no longer clamp raw component values to between0.0
and1.0
. If your app relies on UIKit to clamp component values (whether you’re creating a color or asking a color for its component values), you need to change your app’s behavior when you link against iOS 10.
“将原始组件值限制在 0.0
和 1.0
之间” 意味着当您传递旧 API 时,值低于 0.0
,它将使用 0.0
,当您向旧 API 传递一个高于 1.0
的值时,它将使用 1.0
相反。
UIKit 不再这样做。在新的扩展 sRGB 色彩空间中,像 (1.0, 0.0, 0.0)
这样的 RGB 三元组意味着“尽可能红到 sRGB 可以得到”,但现在也可以创建像 ( 1.1, 0.0, 0.0)
甚至更红。
如果在 iOS 9 或更早版本中,您将 0.0
-1.0
范围之外的值传递给 UIColor
,它现在将接受这些值, 所以你现在会得到与以前不同的颜色。如果您之前只传递该范围内的值,那么对您来说没有任何变化。
如评论中所述,WWDC16 session on Wide Color 中有更多信息.
关于IOS 10 广色域 : Do I need to be concerned?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38982769/
我是一名优秀的程序员,十分优秀!