Właśnie zaktualizowałem do xcode 4.5 z iOS 6.0 i podświetla ostrzeżenie na wszystkich etykietach UIL w moich plikach XIB, mówiąc: „minimalny rozmiar czcionki jest przestarzały na iOS w wersji 6.0”. Czy ktoś wie, do czego to się odnosi i jak to naprawić?
Aktualizacja: obraz nie jest już dostępny (był na https://skitch.com/hahmadi82/eyk51/cloud )
Odpowiedzi:
minimumFontSize
WłaściwośćUILabel
jest przestarzała od wersji iOS 6.0.Alternatywa dla
minimumFontSize
jestminimumScaleFactor
. Jeśli przypiszeszminimumFontSize/defaultFontSize
dominimumScaleFactor
, działa to tak samo, jak minimumFontSize.Kod jest następujący - na przykład rozmiar czcionki to 30,0, a jeśli chcesz, aby minimalny rozmiar czcionki to 12,0
YOURLABEL.font= [UIFont fontWithName:@"FONT_NAME" size:30.0]; [YOURLABEL setMinimumScaleFactor:12.0/[UIFont labelFontSize]];
źródło
Zamiast tego użyj minimumScaleFactor ... Link
źródło
Szybka poprawka ... Tutaj minimalny rozmiar czcionki to 8.0
CGFloat size = textLabel.font.pointSize;// font size of label text [textLabel setMinimumScaleFactor:8.0/size];
źródło
Odpowiadam bardzo późno, ale innym może pomóc. Jak każdy wie, że
setMinimumFontSize
jest przestarzały, więc inną metodąsetMinimumFontSize
jest zamiana,setAdjustFontToFitWidth
która zajmujeBOOL
np[yourLabel setAdjustsFontSizeToFitWidth:YES]; //or yourLabel.adjustsFontSizeToFitWidth = YES;
źródło
Miałem podobny problem. Szybka poprawka polega na użyciu właściwości MinimumScaleFactor elementu UILabel.
źródło
W przypadku Swift użyj następujących elementów:
//set the number (ex. 8 to your desired minimum font size) myLabel!.minimumScaleFactor = 8/myLabel!.font.pointSize;`
Działa jak marzenie!
źródło
Przejdź do wyszukiwarki, znajdź
.storyboard
plik lub swój.xib
i otwórz za pomocą TextEdit. Użyj polecenia find, aby zlokalizować ciąg"autoshrinkMode"
i zamienić wartość"minimumFontSize"
na"minimumFontScale"
Dziwne, że konwersja nie została zapisana w skryptach aktualizacji ...
Również @Rob w komentarzach powyżej podał tę samą odpowiedź. Powinien otrzymać za to uznanie.
źródło
Możesz tam użyć minimalnego współczynnika skali lub przeciągnąć etykietę i ustawić autoshrik-> minimalną czcionkę.
Może to ci pomoże.
źródło
Tak
minumumFontSize
jest przestarzałe.Użyj następujących
minimumScaleFactor:
-Obj.minimumScaleFactor= (floatValue);
źródło