2012-02-18 11 views
10

Niedawno zaktualizowałem system do Xcode 4.3, co spowodowało wyłączenie mojej właściwości autosunka w UILabelach. Sprawdziłem pola w IB i przebudowałem projekt, ale wciąż odcinam tekst. Jakieś sugestie? Czy to znany błąd? Czy istnieje sposób, aby to naprawić programowo.Jak ustawić właściwość Autoresize w Xcode 4.3?

+0

Czy próbowałeś ustawienie '' autoresizingMask' UILabel' za programowo? – yuji

+0

Czy masz na myśli autosraminkę? – sch

+0

Automatyczne maskowanie nie działa. –

Odpowiedz

19

Widzę to samo. Możesz go programowo obejść (robię to w viewDidLoad):

myLabel.adjustsFontSizeToFitWidth = YES; 
+0

To załatwiło sprawę !! Chociaż użyłem '[myLabel setAdjustsFontSizeToFitWidth: YES];' ponieważ myślę, że Apple chce, abyśmy "ustawili" takie właściwości. –

+0

Miałem ten sam problem i zgłosiłem wcześniej radar (http://openradar.appspot.com/10984259). Problem ten został naprawiony w XCode 4.3.1. –

+1

To nie działa dla mnie w ogóle ... –

0

Mam dokładnie odwrotny problem! Zaktualizowałem Xcode 4.3, a teraz automatycznie zmniejsza tekst w moich komórkach widoku tabeli, gdy chcę je skrócić za pomocą elips. Przejrzałem scenorys i zmodyfikowałem wszystkie opcje, które mogą mieć z tym związek, ale odmawiają zrobienia tego, co chcę. Bardzo frustrujące.

Zmieniano ...

spróbować ponownie utworzyć co Xcode robi mi się ponieważ jest odwrotnością tego, co się z tobą dzieje. Zaznacz prototypową komórkę, którą masz do swojego tableview, w scenorysie i kliknij na słowa "Tytuł" i "Podtytuł". Możesz znaleźć właściwość AutoShrinking w inspektorze atrybutów i przypuszczam, że możesz naprawić swój problem, odznaczając to pole i odbudowując swoją aplikację. Bardzo dziwne, jak to spowodowało uaktualnienie Xcode. To także spowodowało, że moja aplikacja zachowywała się nieco dziwnie (tj. Nieoczekiwanie ulegała awarii podczas działania w symulatorze), ale kilka czystych i przebudowanych rozwiązało to. Mam nadzieję, że jesteś w stanie to naprawić, bo wiem, że to było dla mnie równie frustrujące!

+0

Ooops, domyślam się, że rozwiązałem swój własny problem. Musiałem włączyć funkcję automatycznego kodowania w Xcode i ustawić minimalny rozmiar na rozmiar mojego tekstu. To jest głupie. – Dave

+0

Ugh, błąd w Xcode 4.3 nie rozwiązuje się sam. Za każdym razem, gdy go buduję, odznaczam funkcję autorezjum, a jeśli ją utajam, to ją ignoruje ... cieszę się, że twoja działa! –

+0

widząc to samo. Wręcz przeciwkradzie jest bez względu na to, co robię ... – midas06

0

Po prostu zrobiłem to samo. Wszystkie autosoki są wyłączone. Przywrócenie rozmiaru czcionki i włączenie automatycznego zmniejszania nie sprawdziło się.

Musiałem to naprawić programowo, jak zasugerował JLundell.

3

Miałem ten sam problem. Oto poprawka, dodałem ją do metody narzędzia, ponieważ mam ponad 100 xibs w moim projekcie, a kilka z nich wymaga naprawy. Działa świetnie.

Dodaj to do Utility.m:

// UIView+viewRecursion.h 
@interface UIView (viewRecursion) 
- (NSMutableArray*) allSubViews; 
@end 
// UIView+viewRecursion.m 
@implementation UIView (viewRecursion) 
- (NSMutableArray*)allSubViews 
{ 
    NSMutableArray *arr=[[NSMutableArray alloc] init]; 
    [arr addObject:self]; 
    for (UIView *subview in self.subviews) 
    { 
     [arr addObjectsFromArray:(NSArray*)[subview allSubViews]]; 
    } 
    return arr; 
} 
@end 

a to:

+(void)fixLabels:(UIView *)theView{ 

    for(UIView *v in [theView allSubViews]) 
    { 
     if([v isKindOfClass:[UILabel class]]) 
     { 
      if(!((UILabel*)v).adjustsFontSizeToFitWidth){ 
       ((UILabel*)v).adjustsFontSizeToFitWidth=YES; 
       // NSLog(@"fixed %@", theView); 
      } 
     } 
    } 
} 

a następnie zadzwonić fixLabels z viewDidLoad dla każdego widoku, który ma UILabels, które nie są automatycznie kurczenie:

[Utility fixLabels:self.view]; 
0

Xcode 4.3 nie respektuje ustawień Kreatora interfejsu dla właściwości adjustsFontSizeToFitWidth.

Można to naprawić, ustawiając wartość właściwości programowo według sugestii JLundell.

myLabel.adjustsFontSizeToFitWidth = YES; 

Została ona ustalona w 4.3.1

Powiązane problemy