xcode 将SF符号适配到iOS版本

brccelvz  于 2023-08-07  发布在  iOS
关注(0)|答案(2)|浏览(151)

我目前正在开发一个iOS应用程序,将iOS 13设置为部署目标。我在整个应用程序中使用了一些SF符号。现在,由于iOS 14和新版本的XCode已经可用,我一直收到关于我的一个符号被弃用的警告(应该使用paragraphsign而不是paragraph),然而,当我在Interface Builder中将图像更改为paragraphsign时,我收到一个错误,说这个符号只在iOS 14中可用。
现在,我目前的解决方案是忽略该警告,而是使用

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

字符串
在我的代码中,用新版本替换所有不推荐使用的图像。
我的问题是:有没有一种方法可以直接在接口生成器中执行此操作以避免警告?比如“在iOS 14中使用这个,在以前的版本中使用那个”?

des4xlb0

des4xlb01#

一个选择,如果你不想忽略警告...
使用SF符号应用程序,选择“段落符号”并:

File -> Export Custom Symbol Template

字符串
将其保存为paragraphsign.svg,然后将其拖到资源目录中。* 该 * 镜像将在iOS 13上运行时使用...在iOS 14上运行时,将使用实际的paragraphsign SF符号。
不需要代码。

ugmeyewa

ugmeyewa2#

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

相关问题