アプリに簡単なテキスト チャット機能を実装していますが、プログラムによるスクロールに問題がありUITextView
ます。UITextView
新しい行といくつかのテキストを既存のテキストに追加するInterface Builderで作成されたを使用しています。新しいテキストが追加されると、一番下までスクロールするはずです。
アプリに追加する前に、コンセプトを明確にするためにテスト アプリケーションを作成しました。のテキストは のテキストでUITextView
更新されますが、UITextField
スクロールは発生しません。
- (IBAction)enteredText {
CGPoint currentPosition = [textWindow contentOffset];
[textWindow setText:[NSString stringWithFormat:@"%@\n%@", textWindow.text, textInput.text]];
[textWindow setContentOffset:currentPosition animated:NO];
[textWindow scrollRangeToVisible:NSMakeRange([textWindow.text length], 0)];
[textInput setText:@""];
[textInput becomeFirstResponder];
}
少し前に開発した別のアプリケーションに非常によく似た機能を実装したことを覚えています。覚えていることから、コードは似ています。唯一の違いは、以前のアプリケーションは iPhone OS 2 用でしたが、これは 3.0 用です。UITextView
いくつかのフォーラムで、Interface Builder で作成された 3.0 ベータ版でスクロールに問題があったことを読みました。現在のリリース ノートを確認しましたが、それを示すものは何もありませんでした。
編集: UITextView でテキストが更新されるため、IB アクションが呼び出されます。そして、「キャンセル可能なコンテンツタッチ」にチェックが入っています。
編集:同じコードが 2.2.1 では機能するが 3.0 では機能しないことが確認されました