IOS - 获取UITextField的输入文本

Posted zhchoutai

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IOS - 获取UITextField的输入文本相关的知识,希望对你有一定的参考价值。

当UITextField文本改变时, 依据内容更新数据, 通过写监听事件就可以.
加入监听:

[timesField addTarget:self
               action:@selector(textFieldDidChange:)
     forControlEvents:UIControlEventEditingChanged]; // 监听事件

监听事件:

// 监听改变button
- (void) textFieldDidChange:(UITextField*) sender {

    // 文本内容
    NSInteger times = [sender.text integerValue];
    [_serviceNumList replaceObjectAtIndex:_servicePos withObject:[NSNumber numberWithInteger:times]];

    // 总价
    _totalPrice = (float)([_goodsList[_servicePos][@"Price"] floatValue]/100.0)*[[_serviceNumList objectAtIndex:_servicePos] integerValue];
    [_totalPriceLabel setText:[NSString stringWithFormat:@"%0.1f", _totalPrice]];
}

其余UITextField属性:

        // 输入框
        UITextField *timesField = [[UITextField alloc] initWithFrame:CGRectMake(200*kViewRatio, 10*kViewRatio, 32*kViewRatio, 20*kViewRatio)]; // 位置大小
        [timesField setBorderStyle:UITextBorderStyleRoundedRect]; //外框类型
        NSAttributedString* timesText =[[NSAttributedString alloc] initWithString:[NSString stringWithFormat:@"%ld", (long)[[_serviceNumList objectAtIndex:row] integerValue]]]; // 设置文字
        [timesField setAttributedText:timesText];
        [timesField setFont:[UIFont systemFontOfSize: 12*kViewRatio]]; // 文字大小
        [timesField setTextAlignment:NSTextAlignmentCenter]; // 文字位置
        [timesField setDelegate:self]; // 限制长度
        [timesField addTarget:self
                       action:@selector(textFieldDidChange:)
             forControlEvents:UIControlEventEditingChanged]; // 监听事件
        [itemView addSubview:timesField]; // 加入父视图

技术分享图片


以上是关于IOS - 获取UITextField的输入文本的主要内容,如果未能解决你的问题,请参考以下文章

如何在ios中组合使用密码点和普通文本的UITextField

iOS UITextField光标/文字起始位置

什么是在输入 UITextField 时获取整个文本的简单方法?

iOS:如何从 tableview 的自定义单元格中的 UITextField 访问值

ios开发UI篇—UITextfield

如何从 UITextField Delegate 获取当前输入的文本? [复制]