the*_*ma 22 xcode fonts ios swift
我正在使用Swift在Xcode(7.0版Beta)中创建一个游戏,我希望在游戏结尾以"gameOver.ttf"字体显示标签"Game Over".我已将字体添加到我的资源文件夹中.我不知道如何在我的代码中引用它.我能帮忙吗?我的代码:
let label = SKLabelNode(fontNamed: "gameOver")
    label.text = "Game Over"
    label.fontColor = SKColor.redColor()
    label.fontSize = 150
    label.position = CGPointMake(0, 100)
    label.horizontalAlignmentMode = .Center
    node.addChild(label)
Ala*_*din 69
以下是向应用程序添加自定义字体的步骤:
现在,字体将在Interface Builder中可用.要在代码中使用自定义字体,我们需要按名称引用它,但名称通常与字体的文件名不同
有两种方法可以找到名称:
- 在Mac上安装字体.打开字体簿,打开字体并查看列出的名称.
- 以编程方式列出应用程序中的可用字体
对于第二种方法,添加此行是您的应用程序委托 didFinishLaunchingWithOptions 
println(UIFont.familyNames())
要列出swift 2中每个字体系列中包含的字体:
class func printFonts() {
    for familyName in UIFont.familyNames() {
        print("\n-- \(familyName) \n")
        for fontName in UIFont.fontNamesForFamilyName(familyName) {
            print(fontName)
        }
    }
}
找到自定义字体的名称后,您可以像这样使用它:
SKLabelNode(fontNamed: "gameOver") // put here the correct font name
或者用简单的标签:
cell.textLabel?.font = UIFont(name: "gameOver", size: 16) // put here the correct font name 
Swift 4 和 5。我为应用程序字体创建了一个枚举。首先通过双击所需的字体在系统上安装字体。然后安装的字体将出现在属性检查器中的自定义字体下。
import Foundation
import UIKit
private let familyName = "Montserrat"
enum AppFont: String {
    case light = "Light"
    case regular = "Regular"
    case bold = "Bold"
    func size(_ size: CGFloat) -> UIFont {
        if let font = UIFont(name: fullFontName, size: size + 1.0) {
            return font
        }
        fatalError("Font '\(fullFontName)' does not exist.")
    }
    fileprivate var fullFontName: String {
        return rawValue.isEmpty ? familyName : familyName + "-" + rawValue
    }
}
用法
self.titleLabel?.font = AppFont.regular.size(12.0)
| 归档时间: | 
 | 
| 查看次数: | 23428 次 | 
| 最近记录: |