用自制键盘删除字符串的最后一个字符

delete last character of string with self-made keyboard

我有一个 uitextfield (_nameField) 和按钮 a-z、space、减号、删除和确定。

按钮 a-z、space、减号具有以下相同的作用:

NSString *text1 = @"";

- (IBAction)keyboardButtons:(id)sender {


if (_nameField.text.length <=14) {

    if (_nameField.isEditing) {
        text1 = [text1 stringByAppendingString:[sender currentTitle]];
        [_nameField setText:text1];
    }
}

}

完美运行。

删除按钮有这个作用:

- (IBAction)clearButton:(id)sender {

if (_nameField.isEditing) {
    text1 = @"";
    [_nameField setText:text1];
}


}

好的,这很简单,它将我的字符串文本设置为@""。但我只想删除最后一个字符。我该怎么做?

Obj-C 没有提供删除最后一个字符的方法,但您可以通过采用包含除最后一个字符以外的所有字符的子字符串来实现相同的目的。

NSString* withoutLastChar = [originalString substringToIndex: [originalString length] - 1];

随便写

text1 = [text1 substringToIndex:(text1.length -1)]