Mam podklasę UILabel, która ma aktualizować swój tekst, gdy użytkownik coś pisze. Naturalnie, wraz ze wzrostem długości tekstu, rozmiar etykiety musi się dostosować, aby pomieścić tekst. Nazwałem metodę sizeToFit, a gdy etykieta dostosowuje jej szerokość poprawnie, dolna część tekstu jest obcięta. Problem polega na tym, że tekst zawiera indeksy dolne i górne, a etykieta nie dostosowuje się do rozpatrywanych indeksów dolnych (na przykład przy pomocy H₂O dno z nich jest obcięte).Metoda wywołania sizeToFit na UILabel z indeksem nie działa
Czy mogę przesłonić sizeToFit lub sizeThatFits: aby zwiększyć wysokość etykiety?
EDIT:
- (void) addCompound {
self.currentLabel = [[FormulaLabel alloc] initWithFrame:CGRectMake(10, 10, 100, 50)];
[self addSubview:self.currentLabel];
[self.currentLabel sizeToFit];
// Right now self.currentlabel.text = "". However, I've confirmed thru NSLogging that letters are added to self.currentLabel.text as the user types on the keyboard. Also, the text displays properly (as long as it's within the original frame) when I remove [sel.currentLabel sizeToFit]
}
przepisać sizeToFit i po [Super sizeToFit]; zmień wysokość – SAKrisT
@SAKrisT '- (void) sizeToFit { [super sizeToFit]; self.frame = CGRectMake (self.frame.origin.x, self.frame.origin.y, self.frame.size.width, 100); } ' – Mahir
@SAKrisT Próbowałem, ale widok się nie pojawił – Mahir