2016-08-20 29 views
0

我有兩個相同大小的屏幕上的意見。我將一個視圖限制在另一個視圖的頂部,但它不起作用。限制視圖之間的水平中心不工作

我可以看看我在界面生成器和顯示x位置線約束相匹配:

您可以看到約束線的時候我選擇的FrontView中心: enter image description here

然後如你在圖片中看到當我拿起backview.centreX = frontview.centre.X約束線顯示在同一個地方:

enter image description here

因此,據我所見,後視中心x位置應該被約束爲與前視圖中心X位置相同。

然而backview X在一個完全不同的位置(看到我打印每個CGFloat的位置的字符串日誌)結束:

BackView X Position is = 642.0 
BackView Y Position is = 270.0 
FrontView X Position is = 220.0 
frontView Y Position is = 270.0 

我想也許這是我在打印出的代碼,但這是沒有問題(見下文):

倍率FUNC viewDidLoad中(){ super.viewDidLoad()

backViewXStartPosition = backview.center.x 
backViewYStartPosition = backview.center.y 

frontViewXStartPosition = frontview.center.x 
frontViewYStartPosition = frontview.center.y 

backViewXStartPositionString = String (backViewXStartPosition) 
backViewYStartPositionString = String (backViewYStartPosition) 
frontViewXStartPositionString = String (frontViewXStartPosition) 
frontViewYStartPositionString = String (frontViewYStartPosition) 

print ("BackView X Position is = "+backViewXStartPositionString) 
print ("BackView Y Position is = "+backViewYStartPositionString) 
print ("FrontView X Position is = "+frontViewXStartPositionString) 
print ("frontView Y Position is = "+frontViewYStartPositionString) 

我也查詢其他C對後視的限制認爲他們可能會覆蓋,但我在那裏也找不到任何東西。一個有條件限制的水平中心不工作是否正常?

感謝您的幫助

+0

打印所有的幀值)'或'viewDidLayoutSubviews()',並檢查 –

+0

@ EICaptainv2.0謝謝。試圖在看來確實出現和同樣的事情。 –

回答

0

檢查backview的開頭或結尾的限制是否存在可能,他們是矛盾的`viewDidAppear(

+0

謝謝,沒有使用任何視圖的拖尾邊距。 –

+0

你能分享你的故事板文件嗎? –

+0

我該怎麼做? –