サーチ…


備考

カテゴリを使用して、クラスのメソッドをオーバーライドすることができます。メソッドが実際にプライベートであっても。オーバーライドされたメソッドには、カテゴリまたは他の場所からはアクセスできません。だから、既存のクラスにメソッドを追加するときに、それらのメソッドがすでに存在しないことを確認することが重要です。

カテゴリを作成する

カテゴリは、実際のオブジェクトをサブクラス化または変更することなく、オブジェクトに特別な機能を追加する機能を提供します。

たとえば、カスタムフォントを設定したいとします。 UIFontクラスに機能を追加するカテゴリを作成します。あなたのXcodeプロジェクトを開き、ファイル - >新規 - >ファイルをクリックしてObjective-Cファイルを選択し、次へをクリックします。 "CustomFont"と言うカテゴリー名を入力し、UIFontとしてカテゴリとクラスとしてファイルタイプを選択し、 "次へ" "

ここに画像の説明を入力

ここに画像の説明を入力

カテゴリメソッドを宣言する: -

新しいカテゴリのヘッダーファイルを表示するには、「UIFont + CustomFonts.h」をクリックします。メソッドを宣言するために、次のコードをインターフェイスに追加します。

@interface UIFont (CustomFonts)

+(UIFont *)productSansRegularFontWithSize:(CGFloat)size;

@end

カテゴリメソッドを実装する:

カテゴリの実装ファイルを表示するには、 "UIFont + CustomFonts.m"をクリックします。 ProductSansRegular Fontを設定するメソッドを作成するには、次のコードを追加します。

+(UIFont *)productSansRegularFontWithSize:(CGFloat)size{
    
    return [UIFont fontWithName:@"ProductSans-Regular" size:size];
    
}

あなたのカテゴリをインポートする

#import "UIFont+CustomFonts.h"

Labelフォントを設定する

[self.label setFont:[UIFont productSansRegularFontWithSize:16.0]];


Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow