2017-05-05 36 views
0

我最近試圖通過它的約束動畫UIView與其中的文本框(它有約束)的動畫。我成功地設法移動UIView,但無論出於何種原因,當UIView移動並且X-Code調試器拋出錯誤時,其內部的文本字段會變得「憋悶」:[LayoutConstraints] Unable to simultaneously satisfy constraints.。我將UIView從屏幕上移開,所以這可能是原因。我的代碼在這裏:通過其約束動畫UIView(其中包含子組件約束)

 self.mainViewLeftConstraint.constant = self.menuView.frame.width 
     self.mainViewRightConstraint.constant = self.mainViewRightConstraint.constant + self.menuView.frame.width 


     UIView.animate(withDuration: 0.2) { 

      self.view.layoutIfNeeded() 
     } 

在上面的代碼中,mainView是屏幕的寬度,menuView約爲一半。對不起,如果這個問題有點難以理解,因爲沒有任何類型的視覺指南很難解釋這個問題。

+0

你能分享故事板的截圖嗎? –

+0

確保文本字段上的約束僅限於它與其超級視圖之間。 – vacawama

+0

@vacawama是正確的..這意味着你的文本字段約束沒有設置你想要動畫的UIView –

回答

0

你提到[LayoutConstraints] Unable to simultaneously satisfy constraints錯誤意味着的UITextfield的所有約束不w.r.t到UIView(的UITextfield上海華)。所以當你移動UIView時,在同時滿足UITextfield的所有約束(w.r.t UIView + w.r.t其他視圖)時存在一個模糊性。

+0

我redid我的約束,並確保他們都在UIView,但我仍然得到相同的錯誤。我讀到這可能是由於我在UIView的兩邊有兩個約束,我正在移動到ViewController的邊緣。不知道如何解決這個問題。 – Gabe