0

UITextFieldアプリケーションに幅 150 ピクセルのものがあります。textfieldユーザーがテキストを追加するとき、テキストのサイズがの幅を超えた場合textfield、位置が同じになり、入力されたすべてのテキストが適切に表示されるように、それに応じて幅を増やす必要があります。次のコードを使用しましたが、うまくいきませんでした。

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string{

    float width = [textField.text sizeWithFont:textField.font
                             constrainedToSize:CGSizeMake(300, textField.bounds.size.height)].width;

    if (width  > (textField.frame.size.width +50 )) {

        CGRect rect = textField.frame;
        rect.size.width +=10 ;

        textField.frame =rect;
    }

    return YES ;
}
4

1 に答える 1

2

あなたが言うように、それは固定長になるので、次のようにすることができます:

UITextField の最大幅を設定し、テキストを中央揃えにします。

于 2012-11-29T09:36:58.887 に答える