У меня есть подкласс UILabel, который должен обновлять свой текст, когда пользователь что-то вводит. Естественно, что по мере увеличения длины текста размер метки должен корректироваться, чтобы вместить текст. Я вызвал метод sizeToFit, и, хотя метка правильно регулирует свою ширину, нижняя часть текста обрезается. Проблема в том, что текст включает подстрочные и надстрочные индексы, а метка не корректируется с учетом подстрочных индексов (например, с H₂O нижняя часть двух обрезана).
Могу ли я переопределить sizeToFit или sizeThatFits: для увеличения высоты ярлыка?
РЕДАКТИРОВАТЬ:
- (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]
}
- (void)sizeToFit { [super sizeToFit]; self.frame = CGRectMake(self.frame.origin.x, self.frame.origin.y, self.frame.size.width, 100); }
- person Mahir   schedule 07.01.2012