UIFont
ma metody uzyskiwania zwykłej czcionki ( systemFontOfSize
) lub pogrubionej czcionki ( boldSystemFontOfSize
), ale jak uzyskać „cienką czcionkę systemową” dostępną w scenorysie?
Przekazywanie „system-thin” do UIFont
Contructor nie działa, ten konstruktor działa tylko dla czcionek niesystemowych.
Od iOS 8.2 możesz teraz używać
UIFont.systemFontOfSize(_ fontSize: CGFloat, weight weight: CGFloat)
:UIFont.systemFontOfSize(19, weight: UIFontWeightLight)
Pakiet SDK dla systemu iOS zapewnia stałe dla wag:
Korzystanie z czcionki systemowej jest lepsze niż tworzenie czcionki na podstawie nazwy czcionki, gdy chcesz używać czcionek systemowych, ponieważ iOS może zmienić ich czcionki systemowe na iOS (tak jak w przypadku Helvetica Neue w iOS 7, a teraz San Francisco w iOS 9) .
Sugeruję więc, aby dołączyć plik TTF czcionki, którą chcesz, jako użyć tego pliku ttf jako niestandardowej czcionki i użyć niestandardowej czcionki w swojej aplikacji.
To jest szczególny powód, dla którego nie lubię Apple. Nigdy nie rób tego, co mówi Apple. Zawsze rób co chcemy. Apple ciągle zmienia domyślną czcionkę dla każdego systemu operacyjnego.
źródło
Również jeśli chcesz zachować ten sam rozmiar czcionki i po prostu zmienić grubość, użyj z rozmiaru czcionki elementu docelowego. Na przykład:
dzięki temu możesz zachować domyślny rozmiar czcionki i po prostu zmienić grubość.
Począwszy od iOS 11, zmieniono nazwę UIFontWeightThin na
UIFont.Weight.thin
. Więcej można uzyskać tutaj https://developer.apple.com/documentation/uikit/uifont.weight .źródło
Swift 4.2
źródło