iOS应用程序中的白标字体[关闭]

Posted

技术标签:

【中文标题】iOS应用程序中的白标字体[关闭]【英文标题】:White label fonts in iOS application [closed] 【发布时间】:2020-01-07 02:28:39 【问题描述】:

我的任务是为 ios 应用程序添加白标签。

我为 Assets 和 Info.plist 做了很多事情,我只是离开去管理 fonts 的白标解决方案。

例如,每个客户都希望拥有自己的标题字体。所以我想到了一些解决方案。

1) 会有一些配置文件我们可以在里面写客户字体 配置文件,当应用程序运行时,我将从该文件中读取字体 配置文件并应用它们,但不知道如何在每个 动态屏幕。

2) 创建一些基础 ViewController 类并在此处应用字体,然后 每个 viewController 类都将是该基类的子类,并且 将视图控制器特定的标题字体应用到我的基本字体。

我不知道这些解决方案是否很好,提出这个问题的原因是为了获得一些建议和一些更好的解决方案。

也许有人比我更有经验,也许有人比我有更好的想法。每一条建议和帮助对我来说都是非常宝贵的。

谢谢。

【问题讨论】:

使用自定义类、结构并在每个视图中使用它。 【参考方案1】:

在这些情况下我通常做的是,为Font 类创建一个extension 看看:

extension UIFont 
    open class func boldAppFont(ofSize size:CGFloat) -> UIFont 
        guard let f = UIFont(name: KTheme.FontName.bold, size: size)
        else 
            return UIFont.boldSystemFont(ofSize: size)
        
        return f
    

    open class func blackAppFont(ofSize size:CGFloat) -> UIFont 
        guard let f = UIFont(name: KTheme.FontName.black, size: size)
            else 
                return UIFont.boldSystemFont(ofSize: size)
        
        return f
    

现在您可以将KTheme.FontName.bold 更改为您的字体名称并将其传递到您的请求中。只需确保使用此功能为每个组件设置字体即可。

您也可以使用appearance 来制作全局效果。

现在让我们来解决下一个问题。您只能在应用程序中提供有限数量的字体。为了使用自定义字体,您的应用程序info.plist 必须知道这些字体。

在这种情况下我会建议捆绑字体集并要求用户在其中进行选择。当他选择自定义字体时。

【讨论】:

我不明白你的 info.plist 部分是什么意思? @Chucky 我已经更新了答案。 我不认为这可以在白标应用程序中使用,因为您可以使用任意数量的可能字体来满足需求。看看这个答案***.com/questions/30412068/…

以上是关于iOS应用程序中的白标字体[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

白标 React Native 应用程序

白标 UWP 应用程序

如何处理白标平台移动应用程序的部署?

调试时 Mono.AndroidTools.InstallFailedException

统一关闭 Hololens 2 中的启动画面

Webview 应用程序在第一次安装应用程序时工作,但之后只显示空白的白屏