アニメーションを使用して長いUITextViewの一番下にカーソルを設定する方法を見つけようとしています。それを設定することはそれほど難しくありませんでした。実際、この答えはとてもうまくカバーしています。 https://stackoverflow.com/a/34922332/563381アニメーションとスクロール位置でUITextView selectedTextRangeを設定するにはどうすればいいですか?
しかし、それをアニメーション化するのは簡単ではありません。私が見つけることができるsetSelectedTextRange(animated:)
はありません。 UIView.animate...
ブロック内に設定することは何もしないようです。私が思いつくことができる最高の方法は、手動でスクロールをアニメートし、完了時にselectedTextRange
を設定することです。しかし、これは壊れやすく、しばしば不安定になり、時には全く動作しないように見えます。
selectedTextRange
を設定すると、その場所にジャンプします。そのジャンプを回避する方法があった場合、アニメーションはよりスムーズになり、遅延を必要としないので少なくとも脆弱ではなく、selectedTextRange
を設定するのを待たずにsetContentOffset(animated)
を使用することができます。
もう1つの方法は、selectedTextRange
ジャンプをアニメーション化する方法を見つけることです。このフロントでは、前にスクロールを無効にして後で再度有効にするというトリックを試みましたが、それは私のためにはうまくいかないようでした。それはiOSの後のバージョンで変更されています。
。しかし、私はこれがアニメーション化している最中にカーソルを残さないクリーナーを愛しています。 –
アニメーション中ではなく、アニメーションの後にカーソルが表示されることがどのように重要であるかわかりません。あなたは、アニメーションが私が思っている間にあなたのユーザーの入力をしたくないですか?アニメーションの進行中は実際にカーソルを無効にする必要があります。 @RyanPoolos –
@RyanPoolosこれがあなたを助けたら答えを受け入れてください –