Pracuję na aplikacji ios przy użyciu obiektywnego c i mam problem z uilabel, że mogę skorzystać z pomocy. Zasadniczo mam etykietę, która może zmienić rozmiar, aby pasowała do tekstu, który będzie wyświetlać, ale ma maksymalną wysokość, jaką może być. sama etykieta ma stałą szerokość przez cały czas. Włączyłem UILineBreakModeWordWrap i UILineBreakModeTailTruncation, aby tekst był dopasowany i przycięty, ale powoduje to zbyt krótkie przycięcie tekstu, gdy pozostało tylko jedno słowo. raczej przeniesienie go do następnej linii, gdy jest jeszcze miejsce, po prostu ją obcina.Obcinanie uilabel ogonkiem
self.frame = CGRectMake(self.frame.origin.x, self.frame.origin.y, fixedWidth, 0);
self.lineBreakMode = UILineBreakModeWordWrap | UILineBreakModeTailTruncation;
self.numberOfLines = 0;
[self sizeToFit];
jest tam mimo znalezienia gdy UILabel jest faktycznie skrócenie tekstu, więc można następnie sprawdzić wysokość etykiety i dodać do niej, jeśli nadal istnieje? Próbowałem zawsze dodawać dodatkową linię do wysokości, gdy jest miejsce, co pozwala uniknąć wczesnego obcinania, ale potem pozostało z niespójnym rozmiarem całej etykiety. jakieś pomysły na to byłoby wielkie dzięki
skończyło się otrzymaniem rozmiaru, który byłby z podanego linku (sizeWithFont :), a następnie ustawiono tryb linebreak na wordwrap lub tail trunc w zależności od tego, czy był w max czy nie, a następnie używał sizetofit i działał świetnie dzięki – glogic
Dobra wskazówka w tej kategorii. Nie wiedziałem, że to istniało wcześniej. – chakrit