2

ここのチュートリアルに従ってください。フォントをプロジェクトにコピーし、ファイルInfo.plistに追加して、カスタムフォントを追加しています。また、フォントが「ビルドフェーズ」の「バンドルリソースのコピー」にも追加されていることを再確認しました。

しかし、次のようにしてフォントの名前を印刷しようとすると

- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
    self.myLabel.text       =   @"This is a custom font";
    self.myLabel.font       =   [UIFont fontWithName:@"Montserrat-Bold" size:36];
    NSLog(@"my font is %@",[UIFont fontNamesForFamilyName:@"Montserrat-Bold"]);
}

そして私は得ています

2013-02-15 22:20:36.014 UsingCustomFont[5064:11303] my font is (
)

私がやったことについては画像を見てください。 ここに画像の説明を入力してください

私が途中で何が欠けているか知っているなら助けてください。ありがとう

4

5 に答える 5

3

私が過去に遭遇したいくつかの問題:

  1. フォント ファイルには、iOS がサポートしていない形式のデータが含まれている可能性があります。私の経験では、ビットマップ フォントはまったく機能しません。ベクトル フォントのみが読み込まれます。

  2. 間違った姓を使用している可能性があります。によって返された配列[UIFont familyNames]を確認してください。

于 2013-02-16T03:42:08.537 に答える
3

まず、以下の方法ですべてのフォントを印刷します。

// get font family
NSArray *fontFamilyNames = [UIFont familyNames];

for (NSString *familyName in fontFamilyNames)
{ 
   // font names under family
   for(NSString *fontName in [UIFont fontNamesForFamilyName:familyName])
   {
       NSLog(@"Font Name = %@", fontName);
   }
}

ここで、上記のコードでリストされているフォントの正確な名前を取得します。名前が iOS によって異なる場合がありました。

フォントを割り当てるときは、ファミリの名前ではなく、フォント名を使用する必要があります。

于 2013-02-16T04:11:35.487 に答える
0

もう 1 つの一般的な落とし穴は、フォント ファイルがプロジェクトに追加されたが、ターゲットには追加されていないことです。オーガナイザーでフォント ファイルを選択し、右側の [ID とタイプ] インスペクターで対象のメンバーシップを確認します。ターゲットがチェックされていることを確認してください。

于 2013-02-16T03:43:44.930 に答える
0

利用可能なすべてのフォントを調べてみてください。

 for(NSString* family in [UIFont familyNames])
 {
    NSLog(@"%@", family);
   for(NSString* name in [UIFont fontNamesForFamilyName: family]) 
   {
     NSLog(@"  %@", name);
    }
 }
于 2013-02-16T04:32:39.303 に答える
0

try this

  self.myLabel.text       =   @"This is a custom font";
  self.myLabel.font       =   [UIFont fontWithName:@"Montserrat-Bold" size:36];
  NSLog(@"my font is %@", myLabel.font.fontName);
于 2013-02-16T04:39:49.910 に答える