【问题标题】:Adapt SF symbols to iOS version将 SF 符号适配到 iOS 版本
【发布时间】:2021-01-05 05:47:47
【问题描述】:

我目前正在开发一个将 iOS 13 设置为部署目标的 iOS 应用。我在整个应用程序中使用了一些 SF 符号。现在,由于 iOS 14 和新版本的 XCode 已经可用,但当我更改图像时,我收到了关于我的一个符号被弃用的警告(应该使用 paragraphsign 而不是 paragraph)到 Interface Builder 中的 paragraphsign,我收到一条错误消息,提示此符号仅在 iOS 14 中可用...

现在,我目前的解决方案是忽略警告并改为使用

if #available(iOS 14, *)
{
    ...
}

在我的代码中用新版本替换所有已弃用的图像。

我的问题是:有没有办法直接在 Interface Builder 中执行此操作以避免警告?像“在 iOS 14 中使用这个,在以前的版本中使用”?

【问题讨论】:

    标签: ios xcode interface-builder


    【解决方案1】:

    从 SF Symbols 导出然后在资产目录中使用此 svg 仅当您使用不带点 (".") 的符号图像名称时才有效。例如:符号图像名称“speaker.wave.1.fill”将不起作用。警告将消失,但符号不会在 WatchOS 6 上显示。当我将相同的符号图像重命名为“Speaker1fill”并使用此图像而不是系统图像时,它适用于所有 WatchOS 版本。

    【讨论】:

    • 这个答案本身没有意义。如果您想扩展另一个答案,请使用添加评论。谢谢。
    【解决方案2】:

    一个选项,如果您不想忽略警告...

    使用 SF Symbols 应用程序,选择“paragraphsign”并:

    File -> Export Custom Symbol Template
    

    将其保存为paragraphsign.svg,然后将其拖到您的资产目录中。 在 iOS 13 上运行时将使用该图像...在 iOS 14 上运行时将使用实际的 paragraphsign SF 符号。

    无需代码。

    【讨论】:

      猜你喜欢
      • 2020-08-21
      • 1970-01-01
      • 1970-01-01
      • 2019-10-24
      • 2019-10-20
      • 2020-06-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多