2010-11-04 77 views
0

我是iPhone的新手,很難完成這個任務。我知道這是可能的,但找不到方法。 我有UIView其中有UIToolbarUITableView。我使用IB,可以看到頁面頂部的工具欄和TableView下方的工具欄,但是當我朗姆我的應用程序只顯示TableView,Toolbar由於某種原因沒有顯示(TableView覆蓋它!)。如何阻止UITableView附加到頂部

任何幫助表示讚賞,我希望能夠在IB中找到一個設置,但是如果我需要爲它編碼,那也可以。我已經嘗試設置tableview的框架大小(self.tableView.frame = CGRectMake(0, 100, 320, 100);),但這沒有做任何事情!

感謝

+0

你使用什麼樣的視圖控制器 – Matt 2010-11-04 20:50:01

+0

我有一個UITableViewController,但作爲你的指令,我把它改爲UIViewController。 – Amir 2010-11-05 00:33:19

回答

0

IB只是顯示工具欄的面積不實際的工具欄的設計目的。你必須手動完成。

+0

我已經添加了一個真實的工具欄,而不僅僅是設置視圖的屬性來重新分配空間。正如我所解釋的,我有一個擁有UITableView和UIToolbar的UIView。 – Amir 2010-11-05 00:31:16

0

首先,如果你不使用ViewController類,請這樣做。

在IB把你的表和工具欄視圖中,然後將着眼於fileOwner(tableToolViewController)

視圖控制器類的頭文件應該是這個樣子

@interface tableToolViewController : UIViewController <UITableViewDelegate, UITableViewDataSource> { 


    IBOutlet UITableView *theTableView; 
    IBOutlet UIToolbar  *yourToolbar 

現在連接你的網點到你的桌子和工具欄,並應該這樣做:

對於使用self.tableView的調用只需使用TableView插座而不是

+0

馬特,我已經完成了所有這些,但仍然是相同的結果。我只用我的擴展UITableView的方式,但我改變它遵循你的方向,仍然是一樣的!不知道這是否重要,但我已經使用了一個tabbar應用程序嚮導,這是所有選項卡中的一個,tabbar顯示得很好,當我添加工具欄時,IB可以很好地看到它,但只要我運行它,似乎由於某種原因,它擴展了表格以覆蓋除tabbar之外的所有內容!即使我爲導航欄預留空間,它也不會做任何事情!我確定這是簡單的事情,但這讓我發瘋。 – Amir 2010-11-05 00:27:11

0

那麼我設法解決這個問題。只是在這裏解釋它,所以其他可能有同樣問題的人可以受益。

我從馬特建議的開始,但它沒有幫助。然後我創建了一個新項目,並開始使用UIViewUITableView控制器和佈局的不同組合。

看來,如果視圖控制器被定義UITableViewController類型,而不是將其定義爲UITableVC和文件所有者掛到的tableview則電視擴展到覆蓋整個窗口,並沒有什麼可以做(我不能找不到方法!)。

即使更改類的定義,使之延長UIViewController還是這不會解決問題(奇怪!),但如果簡單地創建一個新的類擴展UIViewController和複製粘貼老班所有的代碼,並確保文件所有者如果掛鉤到UIView,那麼一切正常。

我敢肯定,這是所有這些的解釋,但現在我很高興我可以建立我想要的。

感謝您的回覆,幫助和快樂編碼。