0

UITextField を使用してデータを入力するテーブル行があります。「自分のデータ」というデータが含まれているとしましょう。次にこのアクティビティに戻ったときに、編集して を追加したいと思います。ダブル スペースのキーボード ショートカットを使用して、結果を「マイ データ」として取得します。

問題は、ダブル スペースの shortvut を使用すると上書きされ、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 に答える