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 に答える