以下に説明する問題の解決策: 私の問題は、Mavericks/Xcode 5.0.1 の更新で修正されました。これは SDK のバグのようです。
端末アプリでまったく同じ問題のように見えます-スペースを押すと(たとえば、で表示されているリモートサイトでテキストを読むmoreために)、テキストフィールドにスペース文字がないため、範囲が立入禁止で。(これが発生するコードについては、以下を参照してください)
- (BOOL)textViewShouldEndEditing:(UITextView *)textView {
    return NO;
}
これにより、テキストビューがフォーカスされ、押されたすべてのキーが処理されます。これは、キーボード文字を 1 つずつ取得して telnet クライアントに送信する私の方法です。
- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text {
  NSLog(@"—%@— is replacementText", text);
  return YES;
}
xterminal[37918:c07] — — is replacementTextスペースがタップされるとすぐにわかります。問題を発見したとき、これはありませんでした.UITextViewによってスペースが表示されていることを確認するために追加されました.
- (void)textViewDidChange:(UITextView *)textView {
    // determine whether the key was a backspace
    if([textView.text isEqualToString:@""]) {
        uint8_t bsValue = kTelnetCharBS;
        [connection sendData:[NSData dataWithBytes:&bsValue length:1]];
    } else {
        NSLog(@"—%@— in output buffer", textView.text);
        // Not a backspace, send all but the 'X'
        NSRange allButX = NSMakeRange(1, 1);
        [connection sendString:[textView.text substringWithRange:allButX]];
    }
    textView.text = @"X";
}
そうですかxterminal[37918:c07] —X— in output buffer 
直後に墜落
[connection sendString:[textView.text substringWithRange:allButX]];
スペースがないかNSRange allButX = NSMakeRange(1, 1);、他の印刷可能な文字と同じように問題ありません。
実装されている UITextView の他のデリゲート メソッドはありません。で作成されます
inputTextView = [[UITextView alloc] initWithFrame:CGRectZero];
そしてその直後
inputTextView.text = @"X";
inputTextView.delegate = self;
inputTextView.autocorrectionType = UITextAutocorrectionTypeNo;
[self.view addSubview:inputTextView];
[inputTextView becomeFirstResponder];
私のスペースはどこですか?
更新: UITextView がそのように動作する理由はまだわかりません。UITextField は私が望むように機能し、同じ方法で作成されました。UITextViewデリゲートメソッドを置き換えるために、textViewDidChange:私はこれを使用しています:
[inputTextField addTarget:self action:@selector(textFieldDidChange:) forControlEvents:UIControlEventEditingChanged];
それ以外は同じコード。