设置MonoTouch.Dialog UITableView位置?

Rob*_*ens 5 xamarin.ios monotouch.dialog

有没有办法设置MonoTouch.Dialog DialogViewController的位置?我已经将DialogViewController子类化,并在顶部添加了一个UIToolbar,现在我想将表视图向下移动相应的像素.

public class MyViewController : DialogViewController
{
    UIToolbar toolbar;

    public SessionsListViewController (RootElement rootElement) : base(rootElement)
    {
      this.toolbar = new UIToolbar(new RectangleF(0,0,768,44));
      this.toolbar.Items = new UIBarButtonItem[0];
      this.Add(toolbar);
    }
}
Run Code Online (Sandbox Code Playgroud)

Edu*_*coz 1

我永远无法更改 MonoTouch.Dialog 中 TableView 的位置。但这不是库的问题,而是 TableViewController 的工作方式的问题,它是由 MT.Dialog 继承的。

TableViewController 类应该自动管理 TableView 的位置,并且您不应该解决这个问题。即使您使用不同的位置创建 TableView,如 miguel.de.icaza 提到的,TableViewController 也会在 WillAppear 方法期间重新排列 TableView。

当不使用 MT.Dialog 时,解决这个问题的最佳方法(例如,在屏幕的一半上有一个表格)是删除 TableViewController 并简单地使用带有 TableView 对象的 UIViewController 。您仍然可以将委托和数据源传递给 TableView,因此实际上您只是放松了 TableView 的自动定位。

我尝试将 MT.Dialog 更改为从 UIViewController 而不是 UITableViewController 继承,但这导致了很多问题,而且我始终无法完成它。也许有一天我会这么做。

我很想听听我对此是错的!