在iOS 7上,textField.adjustsFontSizeToFitWidth = YES
无效。 minimumFontSize
也已正确设置。如果文本太长而无法放入textField的框架中,我希望字体大小会减少。
但是,实际发生的事情是文本被修剪并且" ..."最后附加。
我试过了:
有什么想法吗?
编辑:
代码有点复杂,但这里是:
self.captionView = [[CaptionView alloc] initWithFrame:CGRectMake(0, 0, self.width, 50)];
self.captionView.textField.font = [self.captionView.textField.font fontWithSize:20.f];
self.captionView.textField.leftPadding = 2.f;
self.captionView.textField.rightPadding = 2.f;
self.captionView.textField.adjustsFontSizeToFitWidth = YES;
self.captionView.textField.minimumFontSize = 2.f;
self.captionView.captionViewDelegate = self;
[self addSubview:self.captionView];
CaptionView
具有属性textField,它是UITextField
的子类。
此子类重写方法:
- (void)drawRect:(CGRect)rect;
- (void) drawPlaceholderInRect:(CGRect)rect;
- (CGRect) editingRectForBounds: (CGRect) bounds;
- (CGRect) textRectForBounds: (CGRect) bounds;
编辑:
我只是注释掉了这些覆盖中的每一个,并且字体仍然没有很好地调整。
编辑:
我发现最相似的问题是here。
接受的答案是放弃使用adjustsFontSizeToFitWidth
。