Iphone 文本字段';输入大文本时,s的大小会发生变化

Iphone 文本字段';输入大文本时,s的大小会发生变化,iphone,ios,uitextfield,Iphone,Ios,Uitextfield,在我的应用程序中,我有多个文本字段。当我输入小文本时,它会工作得很好,但当输入大文本时,文本字段的大小会改变 像这样 小文本 大文本 是的,它只发生在iOS6中,而不发生在iOS5中 更新 我不知道怎么做,但我已经在ios6屏幕上更改了我的约束属性,它现在可以正常运行了。谢谢你的帮助。试试这个 [yourTextField setAdjustsFontSizeToFitWidth:FALSE]; 尝试使用此文本框。但是UITextField没有提供任何选项使其成为多行文本框。因此,您必须使

在我的应用程序中,我有多个文本字段。当我输入小文本时,它会工作得很好,但当输入大文本时,文本字段的大小会改变

像这样

小文本

大文本

是的,它只发生在iOS6中,而不发生在iOS5中

更新

我不知道怎么做,但我已经在ios6屏幕上更改了我的约束属性,它现在可以正常运行了。谢谢你的帮助。

试试这个

[yourTextField setAdjustsFontSizeToFitWidth:FALSE];

尝试使用此文本框。但是
UITextField
没有提供任何选项使其成为多行文本框。因此,您必须使用
UITextView

- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text
{
    CGSize size = [txtView.text sizeWithFont:txtView.font];
    CGRect f = txtView.frame;
    f.size.height = ceil(size.width/f.size.width)*size.height;
    txtView.frame = f;
}
更多信息

  • 否则,如果您不想在下一行中使用此代码

    - (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
    {
    
        CGSize boundingSize = CGSizeMake(320, CGFLOAT_MAX);
        CGSize requiredSize = [textField.text sizeWithFont:[UIFont fontWithName:@"Helvetica" size:20.0f] constrainedToSize:boundingSize
                                             lineBreakMode:NSLineBreakByWordWrapping];
        CGFloat requiredHeight = requiredSize.height;
    
        CGRect frame1;
        frame1 = txtFld.frame;
        frame1.size.height = requiredHeight;
        txtFld.frame = frame1;
        NSLog(@"%f", frame1.size.height);
        return YES;
    }
    

    如果您不想更改宽度,则可以通过
    textField.frame.size.width

    财产


    这意味着在扩展到某个宽度后,限制输入

    我也面临同样的问题。我必须设置文本字段及其相邻uilabel的左右约束,以确保输入大量文本后文本字段不会自行调整大小。这是自动布局的一个问题。尝试了上述所有解决方案,但无法通过上述解决方案修复

    您的意思是uitexfield的fontsize正在更改,即变小..?不,因为您可以看到,如果我输入的文本量较大,则textfield的宽度也会增加。这是我不想我想文本字段默认效果隐藏字符与。。。签名