2012-01-18 12 views
5

Wiem, że ludzie zadali to pytanie kilka razy w Stack, ale zwykła odpowiedź na zmianę "Lines: 0" i wybór "Line Breaks: Word Wrap" po prostu nie naprawia tego dla mnie.Xcode 4.2 - UILabel Word Wrap

Używam Xcode 4.2 z Storyboard. Umieściłem UILabel na kontrolerze widoku i zmieniłem jego rozmiary, aby pokryć większość widoku. Zmieniłem wartość "Linie" na 0 i "Podziały linii" na Zawijanie wyrazów.

Próbowałem \n w moim wyrażenie: @"This is my label text \n that's supposed to wrap."

jakieś pomysły ??

EDYTOWANIE: Nie zadeklarowałem żadnej właściwości etykiety w pliku implementacji, tylko w scenorysie, więc próbowałem następujących rzeczy: Ale bez powodzenia; \ (nazwa i rozmiar czcionki i wyrównanie pracy, ale liczba linii i tryb przerwy wydaje się nic nie robić.)

lblText.numberOfLines = 0;
lblText.font = [UIFont fontWithName:@"Helvetica" size:(15.0)];
lblText.lineBreakMode = UILineBreakModeWordWrap;
lblText.textAlignment = UITextAlignmentLeft;

Odpowiedz

10

Spróbuj

[lblText setFrame:CGRectMake(10, 21, 100, 250)]; 
lblText.text [email protected]"This is my label text \n that's supposed to wrap."; 
lblText.numberOfLines = 3; 
lblText.font = [UIFont fontWithName:@"Helvetica" size:(15.0)]; 
lblText.lineBreakMode = UILineBreakModeWordWrap; 
lblText.textAlignment = UITextAlignmentLeft; 
+0

Działa jak urok. 'setFrame: CGRectMake' załatwił sprawę. Dla osób, które są zaskoczone liczbami występującymi po 'CGRectMake', oznaczają piksele: lewo, góra, szerokość, wysokość. Dzięki Happy! –

+0

Ale co konkretnie na temat wywoływania setFrame podstęp? Czy twoja ramka była tak duża, że ​​rozciągała się poziomo poza granice widoku i jako taka nie miała miejsca owijania? Czy jest coś jeszcze w tej konkretnej ramce, która powoduje zawijanie w twoim przypadku? – mgadda

Powiązane problemy