2014-11-04 36 views
0

我有一個UITableView頂部的UIView(拖放故事板中,我試圖隱藏並顯示該視圖,但表視圖站在原地。 uivew所以當它是無形的tableview去所有頂部的方式嗎?UIIView裏面的UITableView更改框架高度爲0或60

PS。我會爲那些誰願意爲您提供更多的信息。在此先感謝

http://i.stack.imgur.com/cM3tA.png ![漢堡包按鈕視圖和textfield)

+0

I如果你已經設置了AutoLayout,那麼你需要設置它的約束來改變框架。 – Kampai 2014-11-04 12:15:50

回答

1

使用自動佈局:

  • 高度約束添加到您的UIView使用按鈕和文本框
  • 這個高度約束創建引用插座(可以算這將是「searchViewHeightConstraint」)
  • 添加垂直間隔限制了UIView和的UITableView之間
  • 在代碼中 - 當你需要隱藏的UIView - 剛剛成立它的高度限制爲0

    self.searchViewHeightConstraint.constant = 0.f;

此外,您需要存儲某處UIView的初始高度(當它可見時),並在需要顯示UIView時將其高度約束設置爲此值。

沒有自動佈局:

  • 保存的UIView架高度的值
  • 設置的UIView至0
  • 高度調低的UITableView幀相的UIView

    的保存高度y座標
    CGRect tableViewFrame = tableView.frame;  
    tableViewFrame.origin.y -= viewInitialHeight;  
    tableView.frame = tableViewFrame;