Szukaj…


Uwagi

Kategorii można użyć do zastąpienia metod klasy. Nawet jeśli metoda jest faktycznie prywatna. Dostęp do zastąpionej metody nie można uzyskać z kategorii ani nigdzie indziej. Dlatego ważne jest, aby podczas dodawania metod do istniejącej klasy upewnić się, że metody te jeszcze nie istnieją.

Utwórz kategorię

Kategorie zapewniają możliwość dodania dodatkowej funkcjonalności do obiektu bez podklasy lub zmiany rzeczywistego obiektu.

Na przykład chcemy ustawić niestandardowe czcionki. UIFont kategorię, która dodaje funkcjonalność do klasy UIFont . Otwórz projekt Xcode, kliknij Plik -> Nowy -> Plik i wybierz Plik celu C, kliknij Dalej, wprowadź nazwę kategorii, powiedz „CustomFont”, wybierz typ pliku jako Kategoria i Klasa jako UIFont, a następnie kliknij „Dalej”, a następnie „Utwórz. „

wprowadź opis zdjęcia tutaj

wprowadź opis zdjęcia tutaj

Zadeklaruj metodę kategorii: -

Kliknij „UIFont + CustomFonts.h”, aby wyświetlić plik nagłówka nowej kategorii. Dodaj następujący kod do interfejsu, aby zadeklarować metodę.

@interface UIFont (CustomFonts)

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

@end

Teraz zaimplementuj metodę kategorii: -

Kliknij „UIFont + CustomFonts.m”, aby wyświetlić plik implementacji kategorii. Dodaj następujący kod, aby utworzyć metodę, która ustawi czcionkę ProductSansRegular.

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

Zaimportuj swoją kategorię

#import "UIFont+CustomFonts.h"

Teraz ustaw czcionkę Label

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


Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow