gpt4 book ai didi

UITextField 在编辑时不调整字体大小

转载 作者:行者123 更新时间:2023-12-02 06:37:57 25 4
gpt4 key购买 nike

我正在使用设置了所有属性的文本字段,编辑时不会调整字体大小,并且文本会超出文本字段中的 View

txtTitle.font = [UIFont fontWithName:@"Helvetica" size:15.0f];
[txtTitle setMinimumFontSize:3.0];
[txtTitle setAdjustsFontSizeToFitWidth:YES];

它会在一定程度上调整大小,然后结果与文本超出 View 文本字段的结果相同

最佳答案

我知道这是一个老话题,但还是怕你没搞清楚。这是一个错误,以下可以用作解决方法。在 UITextField 上创建一个类别并编写以下方法,并在需要更改字体大小以适应文本字段的宽度时调用它。

- (void)adjustFontSizeToFit
{
UIFont *font = self.font;
CGSize size = self.frame.size;
for (CGFloat maxSize = self.font.pointSize; maxSize >= self.minimumFontSize; maxSize -= 1.f)
{
font = [font fontWithSize:maxSize];
CGSize constraintSize = CGSizeMake(size.width, MAXFLOAT);
CGSize labelSize = [self.text sizeWithFont:font constrainedToSize:constraintSize lineBreakMode:UILineBreakModeWordWrap];
// Keeping the width constant if given text requires more height , decrease the font size.
if(labelSize.height <= size.height)
{
self.font = font;
[self setNeedsLayout];
break;
}
}
// set the font to the minimum size anyway
self.font = font;
[self setNeedsLayout];
}

关于UITextField 在编辑时不调整字体大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13841835/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com