2016-11-22 7 views
0

ここでキーボードが表示されたとき(また、このビューはCollectionViewを持っていることに注意してください)ビューをシフトアップするために私のコードのイオスに動作しますビューの原点yがある距離だけ上に移動します。これはiOS 10でも動作しますが、ビューが最初にロードされて初めてキーボードを開くと、ビューはシフトアップしようとしますが失敗します。代わりに、黒の背景には、その後、一時的にダウンシフトしているように見える消える:スウィフトのiOS 9キーボードがアップ閲覧シフトせず表示されますが、10は

Black part that appears momentarily then disappears in iOS 9 これが唯一のコレクションビューをスクロールする前に、キーボードを開くに起こります。コレクションビューをスクロールし始めると、エラーが消えてキーボードが正しく正しくシフトアップします。

また、このエラーはiOS 10ではまったく表示されません。

+0

を試してみてください。 –

答えて

0

あなたはUIView` `の` layoutIfNeeded`メソッドを呼び出すとアニメーションの完了ブロックを使用し、その中にそれを書いていない理由は、この

UIView.animate(withDuration: 1.0, animations: { 
    //Do your constraint change part here 

}, completion: {bool in 

     // Call here the layoutIfNeeded method 
     self.view.layoutIfNeeded() 
}) 
+0

それを試してみました^それはうまくいかない。 – leonardloo

+0

私は注文を裏返してself.view.layoutIfNeeded()を実行した後に作業が完了したことを認識し、完了時に制約を更新しました。しかし、ビューが上に移動するため、黒い背景が表示されます。ビューの背景を白くするにはどうすればいいですか? – leonardloo

関連する問題