2012-10-15 52 views
0

我有一個MonoTouch.Dialog DialogViewController,它將自定義UIView添加到NavigationItem.Views對象。將邊距添加到MonoTouch.Dialog中的DialogViewController.TableView頂部

UIView有25的高度,它的框架設置如下:

Frame = new System.Drawing.RectangleF(0f, 44f, UIScreen.MainScreen.ApplicationFrame.Width, 25f); 

enter image description here

_toolbar = new UIView(); 
this.NavigationController.NavigationBar.Add (_toolbar); 

如何讓我的tableview中出現UIView後?

+1

您需要將頭添加到'UITableView',這我不知道如何與MonoTouch.Dialog做(有上'UITableViewSource'的方法吧)。 。希望有人能附和 – jonathanpeppers

+0

感謝 - 這似乎工作:'this.TableView.TableHeaderView =新的UIView(新的RectangleF(0,0,_toolbar.Frame.Width,_toolbar.Frame.Height));'。米格爾在下面提出了一種不同的方式,我似乎還沒有開始工作。 – Darbio

回答

1

,因爲我無法得到米格爾的答覆工作,我結束了使用jonathanpeppers想法從上面並設置UITableView.HeaderView屬性爲這是大小爲UIView我已經加入到UINavigationBar底部相同的視圖。

this.TableView.HeaderView = new UIView (new RectangleF(0, 0, 25f, 0)); 
1

您應該在DialogViewController的子類中重寫LoadView()方法,並在其中手動調整UITableView的大小以確保它不會佔用您爲自定義視圖執行的空間。

+0

我是否使用'this.TableView.Frame'調整'UITableView'?當我設置框架時,它似乎沒有用新框架更新UI? – Darbio