iOS UI 顯示!字型變化 UIFont

顯示!字型變化 UIFont

UIFont 繼承NSObject物件,並提供文字顯示時所呈現的屬性供一些物件使用,下面會針對UIFont常用的內容並利用UILabel展示效果。

執行結果

Log

Swift 程式範例

//-----------start-----------
//
//  ViewController.swift
//
//

import UIKit

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        // Cell 資料使用陣列儲存,你也可以使用其他方式提供
        //UIFont 物件的運用
        //
        let dySmallLabel: UILabel = UILabel()
        dySmallLabel.font = UIFont.systemFontOfSize(UIFont.smallSystemFontSize())
        dySmallLabel.text = "字型小字:ABCabc"
        dySmallLabel.frame = CGRect(x: 15, y: 0, width: 300, height: 150)
        self.view.addSubview(dySmallLabel)

        //
        let dyNormalLabel: UILabel = UILabel()
        dyNormalLabel.font = UIFont.systemFontOfSize(UIFont.systemFontSize())
        dyNormalLabel.text = "字型標準大小:ABCabc"
        dyNormalLabel.frame = CGRect(x: 15, y: 30, width: 200, height: 150)
        self.view.addSubview(dyNormalLabel)


        //
        let dyCustomLabel: UILabel = UILabel()
        dyCustomLabel.font = UIFont.systemFontOfSize(CGFloat(25))
        dyCustomLabel.text = "字型指定25大小:ABCabc"
        dyCustomLabel.frame = CGRect(x: 15, y: 60, width: 300, height: 150)
        self.view.addSubview((dyCustomLabel))

        //
        let dyItalicLabel: UILabel = UILabel()
        dyItalicLabel.font = UIFont.italicSystemFontOfSize(UIFont.labelFontSize())
        dyItalicLabel.text = "斜體字英文有效:ABCabc"
        dyItalicLabel.frame = CGRect(x: 15, y: 100, width: 300, height: 150)
        self.view.addSubview(dyItalicLabel)

        //
        let dyBoldLabel: UILabel = UILabel()
        dyBoldLabel.font = UIFont.boldSystemFontOfSize(UIFont.labelFontSize())
        dyBoldLabel.text = "粗體字:ABCabc"
        dyBoldLabel.frame = CGRect(x: 15, y: 140, width: 300, height: 150)
        self.view.addSubview(dyBoldLabel)
        //印出所有支援字型
        print("\(UIFont.familyNames())");
        /*
        [Thonburi, Khmer Sangam MN, Snell Roundhand, Academy Engraved LET, Marker Felt, Avenir, Geeza Pro, Arial Rounded MT Bold, Trebuchet MS, Arial, Marion, Menlo, Malayalam Sangam MN, Kannada Sangam MN, Gurmukhi MN, Bodoni 72 Oldstyle, Bradley Hand, Cochin, Sinhala Sangam MN, Hiragino Kaku Gothic ProN, Iowan Old Style, Damascus, Al Nile, Farah, Papyrus, Verdana, Zapf Dingbats, DIN Condensed, Avenir Next Condensed, Courier, Hoefler Text, Euphemia UCAS, Helvetica, Lao Sangam MN, Hiragino Mincho ProN, Bodoni Ornaments, Superclarendon, Mishafi, Optima, Gujarati Sangam MN, Devanagari Sangam MN, Apple Color Emoji, Savoye LET, Kailasa, Times New Roman, Telugu Sangam MN, Heiti SC, Apple SD Gothic Neo, Futura, Bodoni 72, Baskerville, Symbol, Heiti TC, Copperplate, Party LET, American Typewriter, Chalkboard SE, Avenir Next, Bangla Sangam MN, Noteworthy, Zapfino, Tamil Sangam MN, Chalkduster, Arial Hebrew, Georgia, Helvetica Neue, Gill Sans, Kohinoor Devanagari, Palatino, Courier New, Oriya Sangam MN, Didot, DIN Alternate, Bodoni 72 Smallcaps]
        */
        //
        let dyHelveticaNeueLightLabel: UILabel = UILabel()
        dyHelveticaNeueLightLabel.font = UIFont(name:"Helvetica Neue", size:UIFont.labelFontSize())
        dyHelveticaNeueLightLabel.text = "指定字型一:ABCDEFGHabcdefgh"
        dyHelveticaNeueLightLabel.frame = CGRect(x: 15, y: 230, width: 300, height: 150)
        self.view.addSubview(dyHelveticaNeueLightLabel)
        //
        let dyArialLabel: UILabel = UILabel()
        dyArialLabel.font = UIFont(name:"Apple Color Emoji", size:UIFont.labelFontSize())
        dyArialLabel.text = "指定字型二:ABCDEFGHabcdefgh"
        dyArialLabel.frame = CGRect(x: 15, y: 180, width: 300, height: 150)
        self.view.addSubview(dyArialLabel)

    }
    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
    }

}

//------------end------------

Objective-C 程式範例

標頭檔

//-----------start-----------
//
//  ViewController.h
//
//
//

#import <UIKit/UIKit.h>

@interface ViewController : UIViewController


@end



//------------end------------

程式檔

//-----------start-----------
//
//  ViewController.m
//
//
//

#import "ViewController.h"
#import <UIKit/UIKit.h>


@interface ViewController ()

@end

@implementation ViewController


- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.

    // Cell 資料使用陣列儲存,你也可以使用其他方式提供
    //UIFont 物件的運用
    //
    UILabel *dySmallLabel = [UILabel new];
    dySmallLabel.font = [UIFont systemFontOfSize:[UIFont smallSystemFontSize]];
    dySmallLabel.text = @"字型小字:ABCabc";
    dySmallLabel.frame = CGRectMake(15, 0, 300, 150);
    [self.view addSubview:dySmallLabel];

    //
    UILabel *dyNormalLabel = [UILabel new];
    dyNormalLabel.font = [UIFont systemFontOfSize:[UIFont systemFontSize]];
    dyNormalLabel.text = @"字型標準大小:ABCabc";
    dyNormalLabel.frame = CGRectMake(15, 30, 200, 150);
    [self.view addSubview:dyNormalLabel];


    //
    UILabel *dyCustomLabel = [UILabel new];
    dyCustomLabel.font = [UIFont systemFontOfSize:(CGFloat)25];
    dyCustomLabel.text = @"字型指定25大小:ABCabc";
    dyCustomLabel.frame = CGRectMake(15, 60, 300, 150);
    [self.view addSubview:dyCustomLabel];

    //
    UILabel *dyItalicLabel = [UILabel new];
    dyItalicLabel.font = [UIFont italicSystemFontOfSize:[UIFont labelFontSize]];
    dyItalicLabel.text = @"斜體字英文有效:ABCabc";
    dyItalicLabel.frame = CGRectMake(15, 100, 300, 150);
    [self.view addSubview:dyItalicLabel];

    //
    UILabel *dyBoldLabel = [UILabel new];
    dyBoldLabel.font = [UIFont boldSystemFontOfSize:[UIFont labelFontSize]];
    dyBoldLabel.text = @"粗體字:ABCabc";
    dyBoldLabel.frame = CGRectMake(15, 140, 300, 150);
    [self.view addSubview:dyBoldLabel];
    //印出所有支援字型
    NSLog(@"%@",[UIFont familyNames]);
    /*
     (
     Marion,
     Copperplate,
     "Heiti SC",
     "Iowan Old Style",
     "Courier New",
     "Apple SD Gothic Neo",
     "Heiti TC",
     "Gill Sans",
     "Marker Felt",
     Thonburi,
     "Avenir Next Condensed",
     "Tamil Sangam MN",
     "Helvetica Neue",
     "Gurmukhi MN",
     "Times New Roman",
     Georgia,
     "Apple Color Emoji",
     "Arial Rounded MT Bold",
     Kailasa,
     "Kohinoor Devanagari",
     "Sinhala Sangam MN",
     "Chalkboard SE",
     Superclarendon,
     "Gujarati Sangam MN",
     Damascus,
     Noteworthy,
     "Geeza Pro",
     Avenir,
     "Academy Engraved LET",
     Mishafi,
     Futura,
     Farah,
     "Kannada Sangam MN",
     "Arial Hebrew",
     Arial,
     "Party LET",
     Chalkduster,
     "Hiragino Kaku Gothic ProN",
     "Hoefler Text",
     Optima,
     Palatino,
     "Malayalam Sangam MN",
     "Lao Sangam MN",
     "Al Nile",
     "Bradley Hand",
     "Hiragino Mincho ProN",
     "Trebuchet MS",
     Helvetica,
     Courier,
     Cochin,
     "Devanagari Sangam MN",
     "Oriya Sangam MN",
     "Snell Roundhand",
     "Zapf Dingbats",
     "Bodoni 72",
     Verdana,
     "American Typewriter",
     "Avenir Next",
     Baskerville,
     "Khmer Sangam MN",
     Didot,
     "Savoye LET",
     "Bodoni Ornaments",
     Symbol,
     Menlo,
     "Bodoni 72 Smallcaps",
     "DIN Alternate",
     Papyrus,
     "Euphemia UCAS",
     "Telugu Sangam MN",
     "Bangla Sangam MN",
     Zapfino,
     "Bodoni 72 Oldstyle",
     "DIN Condensed"
     )

     */
    //
    UILabel *dyHelveticaNeueLightLabel = [UILabel new];
    dyHelveticaNeueLightLabel.font = [UIFont fontWithName:@"Helvetica Neue" size:[UIFont labelFontSize]];
    dyHelveticaNeueLightLabel.text = @"指定字型一:ABCDEFGHabcdefgh";
    dyHelveticaNeueLightLabel.frame = CGRectMake(15, 230, 300, 150);
    [self.view addSubview:dyHelveticaNeueLightLabel];
    //
    UILabel *dyArialLabel = [UILabel new];
    dyArialLabel.font = [UIFont fontWithName:@"Apple Color Emoji" size:[UIFont labelFontSize]];
    dyArialLabel.text = @"指定字型二:ABCDEFGHabcdefgh";
    dyArialLabel.frame = CGRectMake(15, 180, 300, 150);
    [self.view addSubview:dyArialLabel];

}

- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}


@end

//------------end------------