0

我的 UITextfield 设置为在初始化时仅显示 1 个字符,但是我使用约束使该字段能够根据需要扩展。

我的约束:

@"H:[txtField(<=80)]-14-|

当我通过 text 属性设置 textField 时,它会完美调整大小,但是当我尝试通过键盘输入它时,我能得到的最好的方法是在 shouldChangeCharactersInRange 中使用sizeToFit ......哪种有效,但不是美元金额移动在 iphone 上向内向左移动,它向右向外移动并离开屏幕。

我怎样才能让它向内向左移动?

4

1 回答 1

0

我最终使用了我在 StackOverflow 上找到的一点点

shouldChangeCharactersInRange 双倍电流值;

NSString *str;

if(![textField.text length]){
    str = @"$ 0.00";
}else{
    str = textField.text;
}

currentValue = [[str substringFromIndex:1] doubleValue];

double cents = round(currentValue * 100.0f);

if ([string length]) {
    for (size_t i = 0; i < [string length]; i++) {
        unichar c = [string characterAtIndex:i];
        if (isnumber(c)) {
            cents *= 10;
            cents += c - '0';
        }
    }
} else {
    // back Space
    cents = floor(cents / 10);
}

textField.text = [NSString stringWithFormat:@"%.2f", cents / 100.0f];

//Add this line
[textField setText:[NSString stringWithFormat:@"$%@",[textField text]]];

return NO;
于 2013-01-30T17:39:43.470 回答