你如何在Swift中设置字体样式?

时间:2014-07-12 00:22:29

标签: ios swift uifont

我正在尝试为Swift开发,它运行得很顺利。我遇到的一个问题是如何在语言中以编程方式设置字体样式。

例如,在这个标签中,我编写了下面的代码,例如,我如何才能使它成为Helvetica Neue Ultralight?

label.font = UIFont (name: "Helvetica Neue", size: 30)

5 个答案:

答案 0 :(得分:68)

我假设这是一个自定义字体。对于任何自定义字体,这就是你要做的。

  1. 首先下载并在Xcode中将字体文件添加到项目中 (这些文件也应该出现在“目标 - >构建阶段 - >复制捆绑资源”中。)

  2. 在Info.plist文件中,添加“应用程序提供的字体”键,类型为“数组”。

  3. 对于要添加到项目中的每种字体,使用文件的全名(包括其扩展名)(例如HelveticaNeue-UltraLight.ttf)为您创建的阵列创建项目。 保存“Info.plist”文件。

  4. label.font = UIFont (name: "HelveticaNeue-UltraLight", size: 30)

答案 1 :(得分:52)

一个很棒的资源是iosfonts.com,它表示该字体的名称是HelveticaNeue-UltraLight。所以你要使用这段代码:

label.font = UIFont(name: "HelveticaNeue-UltraLight", size: 30)

如果系统找不到该字体,则默认为“正常”字样。字体 - 我认为它像11点Helvetica。这可能会令人困惑,请务必检查您的字体名称。

答案 2 :(得分:17)

您可以通过两种方式设置自定义字体:design timerun-time

  1. 首先,您需要download required font(.ttf文件格式)。然后,双击该文件进行安装。

  2. 这会显示一个弹出窗口。点击&{39; install font'按钮。

  3. Screenshot 1

    1. 这将安装字体,并将显示在'Fonts'窗口中。
    2. Screenshot 2

      1. 现在,字体已成功安装。将自定义字体拖放到项目中。这样做可以确保' Add to targets'检查。
      2. Screenshot 3

        1. 您需要确保此文件也已添加到项目的Copy Bundle Resources'的{​​{1}}中的Build Phases中。
        2. Screenshot 4

          1. 在此之后,您需要在项目的Targets中添加此字体。 使用' Info.plist'创建新密钥。类型为 Array 。 将字体添加为Array中类型为String的元素。
          2. Screenshot 5

            <强> Font Provided by application

            1. 从Storyboard文件中选择标签。转到A. Design mode :的{​​{1}}中的Font属性。
            2. Screenshot 6

              1. 点击字体,然后选择&#39;自定义字体&#39;
              2. Screenshot 7

                1. 从“家庭”部分选择您已安装的自定义字体。
                2. Screenshot 8

                  1. 现在您可以看到标签的字体设置为自定义字体。
                  2. Screenshot 9

                    <强> Attribute inspector

                    Utilities

                    运行时模式似乎不适用于动态形成的字符串

                    B. Run-time mode :

                    请注意,在上述情况中,只有设计时方法才能正常使用。

答案 3 :(得分:15)

在Swift中添加自定义字体

  1. 将字体拖放到项目中。
  2. 仔细检查它是否已复制到Copy Bundle Resource中。 (构建阶段 - &gt;复制捆绑资源)。
  3. 在plist文件中添加“应用程序提供的字体”并添加全名字体。
  4. 现在使用您的字体:myLabel.font = UIFont (name: "GILLSANSCE-ROMAN", size: 20)

答案 4 :(得分:0)

以下方法在UIFont类中可用。

Label.Font = UIFont.FromName("Copperplate", 10.0f);

获取字体家族列表Github/IOS-UIFont-Names