1

我有一个 UISplitViewController 并试图从我的 MasterViewController 获取一个事件并完全更改 DetailViewController。所以我发现,这基本上可以通过执行以下操作来完成:

ViewControllers[1] = new MyNewViewController();

当我这样做时,没有任何改变!我知道这与设置委托有关,但我不知道我需要在哪里以及如何进行。

4

1 回答 1

2

覆盖 UISplitViewControllerDelegate 来做任何需要做的事情。我的一个应用程序的示例:

using System;

using MonoTouch.UIKit;

namespace PythonMath
{
    class SplitViewControllerDelegate : UISplitViewControllerDelegate
    {
        public override bool ShouldHideViewController(
            UISplitViewController svc,
            UIViewController viewController,
            UIInterfaceOrientation inOrientation)
        {
            return (! InAppPurchaseModel.Editor.Purchased) ||
                inOrientation == UIInterfaceOrientation.Portrait ||
                inOrientation == UIInterfaceOrientation.PortraitUpsideDown;
        }
    }
}

然后将其分配给 UISplitViewController 的委托:

var SplitViewController = new UISplitViewController();
SplitViewController.Delegate = new SplitViewControllerDelegate ();
于 2013-03-19T19:03:02.483 回答