将DialogViewController放在VIewController子视图中

时间:2014-02-12 22:54:40

标签: uiview xamarin.ios mvvmcross monotouch.dialog mvxbind

在我的SplitViewController的DetailView中,我放置了几个UIViews作为不同平面TableView的容器。到目前为止我的意图。为了简单起见,我想在这些SubViews中添加DialogViewControllers(MvxDialogViewControllers,说实话,但这不起作用)。我的问题是,Dialogs重叠他们的容器并“使用”更多的空间,然后他们应该(我可以看到容器视图周围的默认灰色背景)。

因为我认为DialogViewController的框架取决于其父框架的尺寸,所以我有点困惑。我像这样创建和添加DVC(ParentViewController派生自MvxViewController):

public partial class DetailView : BaseView
{               
public override void ViewDidLoad ()
{
    base.ViewDidLoad ();

    CreateVisitContextController();
    // ...
}

private void CreateVisitContextController()
{
    var root = new RootElement("Test")
    {
        new Section("Section1"),
        new Section("Section2")
    };

    var dialogViewController = new DialogViewController(root);
    VisitContextContainer.AddSubview(dialogViewController.TableView);
}

任何提示或帮助都会非常感激。也许这完全是错误的方向?

一句话:我在IB中设计了DetailView和相应的容器子视图。

当我使用DialogViewController而不继承MvxDialogViewController时,我是否仍然可以绑定到Dialog Elements?

提前致谢,祝你有愉快的夜晚!

1 个答案:

答案 0 :(得分:0)

  

“使用”更多空间,然后他们应该

值得花一些时间来看看uikit及其运作方式。 uiview并不总是自动调整其容器大小。

像q& a这样的快速修补程序如下:Makeing view resize to its parent when added with addSubview - 但从苹果uikit引用开始可能更好 - http://developer.apple.com/library/ios/documentation/UIKit/Reference/UIKit_Framework/_index.html