Я использую подкласс UITextField для рисования строки «m3» всегда в конце текстового поля, но что-то не работает. Я знаю, что метод вызван, потому что я протестировал его с помощью NSLog, что я делаю неправильно?drawRect метод not drawing
Мой класс:
// Only override drawRect: if you perform custom drawing.
// An empty implementation adversely affects performance during animation.
- (void)drawRect:(CGRect)rect
{
NSString *strM3 = [[NSString alloc] initWithFormat:@" m³"];
/// Make a copy of the default paragraph style
NSMutableParagraphStyle *paragraphStyle = [[NSParagraphStyle defaultParagraphStyle] mutableCopy];
/// Set line break mode
paragraphStyle.lineBreakMode = NSLineBreakByTruncatingTail;
/// Set text alignment
paragraphStyle.alignment = NSTextAlignmentRight;
NSDictionary *attributes = @{ NSFontAttributeName:[UIFont fontWithName:@"HelveticaNeue-Bold" size:12.0],
NSParagraphStyleAttributeName:paragraphStyle};
[strM3 drawInRect:rect withAttributes:attributes];
}
UITextField имеет много вещей, нарисованных наверх это сам. Фоновые рисунки будут покрыты всеми этими вещами. Чтобы проверить это, вы можете программно удалить все подзоны и посмотреть, появляется ли ваш «m3». 'for (UIView * subview в textField.subviews) [subview removeFromSuperview];'. Я думаю, вам нужно будет установить текст по умолчанию, а затем изменить входной текст всякий раз, когда вводится новый символ. – Putz1103