テキストビューが属するビューのサイズを変更しています。ビューが大きくなったり小さくなったりすると、テキストが揺れます。ビューのサイズ変更時にテキストビューが揺れる
lazy var textview: UITextView = {
let textView = UITextView()
textView.text = ""
textView.font = .systemFont(ofSize: 12, weight: UIFontWeightMedium)
textView.isScrollEnabled = false
textView.isEditable = false
textView.isSelectable = true
textView.isUserInteractionEnabled = true
textView.translatesAutoresizingMaskIntoConstraints = false
textView.textAlignment = .center
textView.textColor = .lightGray
textView.dataDetectorTypes = .link
return textView
}()
私はそれがそうする際に、この
if let window = UIApplication.shared.keyWindow {
let statusBarHeight = UIApplication.shared.statusBarFrame.size.height
UIView.animate(withDuration: 0.5, delay: 0, usingSpringWithDamping: 1, initialSpringVelocity: 1, options: .curveLinear, animations: {
self.frame = CGRect(x: 0, y: statusBarHeight, width: window.frame.width, height: window.frame.height - statusBarHeight)
self.layer.cornerRadius = 0
self.layoutIfNeeded()
}, completion: nil)
}
のようなフルスクリーンに合わせて中だという見解をリサイズよ、ビューは完全に展開したが:テキストビューとの
宣言textviewsテキストは、アニメーションを非常にプロフェッショナルに見せかけるようなバウンスエフェクトです...アドバイスはありますか?
編集:センターテキストの位置合わせオプションを削除したときのようにうまくいきます。テキストセンターを整列させて動作させるにはどうすればよいですか?
これが問題の原因ではありませんが、あなたのコードは意味がないことに注意してください。なぜあなたは 'layoutIfNeeded'を呼び出すフレームを変更していますか? – matt
@matt layoutIfNeededを削除するとアニメーションが滑らかになります。理由はわかりません。ありがとう – Walker
@matt私はtextviewsの制約を削除する必要があります、フレームをアニメーション..そしてreadd?すべてがうまくアニメーション化されます。ちょっと変わったバウンス効果を出すテキストビューのテキストです。 – Walker