下部にaUIPopover
をUIScrollView
含む内部に aUITextView
があります。キーボードが表示されると、テキスト ビューの編集が開始されると、ポップオーバーのサイズが変更されます。テキストビューが確実に表示されるようにするには、以下のコードが必要です。
- (void)textViewDidBeginEditing:(UITextView *)textView {
CGRect visRect = textView.frame;
[self.scrollView scrollRectToVisible:visRect animated:NO];
}
問題は、コードがテキスト ビュー全体を表示しないことです。代わりに、以下に示すように、カーソルの下部までのテキスト ビューのみが表示されます。
テキストビュー全体を表示する/スクロールビューを一番下までスクロールするにはどうすればよいですか? 私はこれを試しました:
CGPoint bottomOffset = CGPointMake(0, self.scrollView.contentSize.height - self.scrollView.bounds.size.height);
[self.scrollView setContentOffset:bottomOffset animated:YES];
この回答で説明されているように、何も機能しません。
さらに、キーボードを所定の位置に移動した後、スクロールビューが表示された位置にスクロールされます。理想的には、キーボードの移動前または移動中にスクロールを実行したいと考えています。
どんな助けでも素晴らしいでしょう。