Czy ktoś może mi powiedzieć, jak mogę zmienić typ i rozmiar czcionki UISegmentedControl
?
ios
iphone
cocoa-touch
font-size
uisegmentedcontrol
Aashutosh Tiwari
źródło
źródło
Odpowiedzi:
Natrafiłem na ten sam problem. Ten kod ustawia rozmiar czcionki dla całej kontrolki podzielonej na segmenty. Coś podobnego może działać przy ustawianiu rodzaju czcionki. Pamiętaj, że jest to dostępne tylko dla iOS5 +
Obj C :
EDYCJA:
UITextAttributeFont
została wycofana - użyjNSFontAttributeName
zamiast tego.EDYCJA 2: Dla Swift 4
NSFontAttributeName
zmieniono naNSAttributedStringKey.font
.Swift 5 :
Swift 4 :
Swift 3 :
Swift 2.2 :
Dzięki implementacjom Swift od @ audrey-gordeev
źródło
[mySegmentedControl setTintColor:onColor forTag:kTagOnState];
a, a[mySegmentedControl setTintColor:offColor forTag:kTagOffState];
następnie zastosuj[mySegmentedControl setTitleTextAttributes:attributes forState:UIControlStateNormal];
kolory, które właśnie ustawiłem, odejdź.NSDictionary *attributes = @{NSFontAttributeName: [UIFont boldsystemFontOfSize:12.0f]};
boldSystemFontOfSize:
(kapitał S dla systemu)Użyj interfejsu API wyglądu w iOS 5.0+:
Linki: http://developer.apple.com/library/ios/#documentation/UIKit/Reference/UIAppearance_Protocol/Reference/Reference.html#//apple_ref/doc/uid/TP40010906
http://www.raywenderlich.com/4344/user-interface-customization-in-ios-5
źródło
UITextAttributeFont
został zamortyzowany - użyjNSFontAttributeName
zamiast tego.UISegmentedControl
.Oto szybka wersja zaakceptowanej odpowiedzi:
Swift 3 :
Swift 2.2 :
źródło
Inną opcją jest zastosowanie transformacji do kontrolki. Zmniejszy to jednak wszystko, w tym granice kontroli.
źródło
Szybki styl:
źródło
[NSFontAttributeName: font]
Tutaj zaktualizowałem dla iOS8
źródło
XCode 8.1, Swift 3
wystarczy zmienić wartość liczbową
(ofSize: 24.0)
źródło
Jeśli masz jakieś zapytanie, skontaktuj się ze mną.
źródło
nil
wartość.C # / Xamarin:
źródło
Szybki 4
źródło
Instance member 'setTitleTextAttributes' cannot be used on type 'UISegmentedControl'; did you mean to use a value of this type instead?
iOS13 / Swift5Daniel wskazał mi właściwy sposób. Użyłem tego w ten sposób
źródło
Rozszerzenie do
UISegmentedControl
ustawiania rozmiaru czcionki.źródło
źródło
w
swift 5
,źródło
Rzeczywistą czcionkę dla UILabel można uzyskać, rekurencyjnie sprawdzając każdy z widoków zaczynając od UISegmentedControl. Nie wiem, czy to najlepszy sposób, ale to działa.
W powyższym kodzie po prostu ustawiam kolor tekstu UILabel, ale przypuszczam, że możesz pobrać lub ustawić właściwość font.
źródło
jest to dla celu c dodaj nazwę segmentowego sterowania zamiast mysegmentedcontrol
mam nadzieję, że to pomoże
źródło