【问题标题】:Is it possible to set the system font in Xcode?是否可以在 Xcode 中设置系统字体?
【发布时间】:2013-01-20 16:29:27
【问题描述】:

在 Xcode 中,我使用带有字体系统的固定 UILabel,在 IB 中设置文本并通过按 Command=

将大小设置为完全适合

如果我在 iPad 2 或 iPad 模拟器(非视网膜)上运行它,它会显示 OK。如果我在 iPad 3 或 iPad 模拟器(视网膜)上运行它,它有时会截断文本。文本截断示例:“Min.”显示为“M..”

经过一番搜索,我发现这是由于系统字体不同造成的:Helvetica on nonretina iPad。视网膜 iPad 上的 Helvetica Neue。因此,标签在设计时看起来不错,但在视网膜显示器上被切断了。 Helvetica Neue 似乎稍微宽一些。如果我在 IB 中将字体硬编码为 Helvetica Neue 并按 Command-=,则将大小调整 1 个像素以适合字体。

Xcode 中的 IB 似乎正在使用 Helvetica。我可以在某处将其切换到 Helvetica Neue 吗?我宁愿切换 Xcode 中使用的字体,而不是将所有字体硬编码为 Helvetica Neue。

【问题讨论】:

标签: xcode uilabel retina-display system-font


【解决方案1】:

您的直觉是正确的,您不想对特定字体进行硬编码,因为对系统字体的进一步更改会使您的应用看起来过时或笨拙。为避免这种情况,请使用 Autolayout(基于约束的布局)使您的标签动态适应文本。

观看 2013 年 WWDC 视频,特别是 Building User Interfaces for iOS7,讨论类型系统的更新,Taking Control of Auto Layout in Xcode 5讨论实施布局更改。

【讨论】:

    【解决方案2】:

    您所问的问题已在此处得到解答:Set the default font style, color, and size for an xcode project。这是该答案中引用的 WWDC 会话视频,并说明了如何自定义默认 UI:https://developer.apple.com/videos/wwdc/2012/?id=216

    【讨论】:

    • 需要更改 Interface Builder 正在使用的字体。不是 Xcode 中项目的默认字体,而是 XCode IB 本身的默认字体。所以这个答案没有帮助。
    猜你喜欢
    • 1970-01-01
    • 2018-11-26
    • 2011-01-26
    • 2020-01-19
    • 2018-09-15
    • 1970-01-01
    • 2015-05-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多