スタックビューのすべてのサブビューをアニメーション表示しようとすると、左上に移動することがわかります。表示すると、それらは左上から適切な空間にアニメーション化されます。 配置されたビューのサブセットのみを非表示にすると、それらは期待どおりにアニメートされます。UIStackViewは、すべてのサブビューがアニメーションブロック内に隠されている場合、サブビューを左上に配置します。
私の現在の回避策は、目に見えないサブビューをスタックに保持することですが、これは非常にうまいです。
私は、私は非常に同様の問題に直面し、バックの数時間後と述べ、私はself.view.layoutIfNeeded()
を呼び出すと、問題を修正することを見つけ
UIView.animate(withDuration: 0.5) {
self.someStack.arrangedSubviews.forEach { $0.isHidden = !$0.isHidden
}
こんにちは、私は同じ問題を抱えています、あなたはそれを解決する方法を見つけましたか?ありがとう –
完全に満足できるものはありません。私は高さが0に制限されたUIVIewを持っていることに気づいた。私は必要に応じて他のすべてのビューを隠して設定し、うまく機能します。 –
ありがとう!私は同じことをすることを考えていた。それは唯一の方法です –