0

我有一个表格行,它使用 UITextField 输入了一些数据。假设我在“我的数据”中有一些数据,下次当我回到这个活动时,我想编辑它并附加 . 使用双空格键盘快捷键将结果作为“我的数据”。

问题是当我使用双空格快捷方式时,它会覆盖它并将 UITextfield 的值替换为“。”

有什么办法可以附加这个快捷方式。

我希望我能正确解释我的问题。

4

1 回答 1

0

经过大量挖掘和一些操作后,我得到了以下答案,如果有人遇到同样的问题,这可能会有所帮助。

使用以下委托调用

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

并复制以下代码以解决上述问题。

//Check for double space, hot key shortcut provided on keyboard.
if((range.location > 0 &&
    [string length] > 0 &&
    [[NSCharacterSet whitespaceCharacterSet] characterIsMember:[string characterAtIndex:0]] &&
    [[NSCharacterSet whitespaceCharacterSet] characterIsMember:[[textField text] characterAtIndex:range.location - 1]])) {

    //Manually replace the space with your own space, programmatically
    NSRange backward = NSMakeRange(range.location - 1, 1);
    textField.text = [rightTextField.text stringByReplacingCharactersInRange:backward withString:@". "];
    return NO;
} 

这将附加 . 到 UITextField 中的现有数据。

仍在寻找更好的答案。

于 2013-01-23T17:59:23.720 回答