我有一个 UISplitViewController 并试图从我的 MasterViewController 获取一个事件并完全更改 DetailViewController。所以我发现,这基本上可以通过执行以下操作来完成:
ViewControllers[1] = new MyNewViewController();
当我这样做时,没有任何改变!我知道这与设置委托有关,但我不知道我需要在哪里以及如何进行。
我有一个 UISplitViewController 并试图从我的 MasterViewController 获取一个事件并完全更改 DetailViewController。所以我发现,这基本上可以通过执行以下操作来完成:
ViewControllers[1] = new MyNewViewController();
当我这样做时,没有任何改变!我知道这与设置委托有关,但我不知道我需要在哪里以及如何进行。
覆盖 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 ();