2013-03-19 2 views
0

У меня есть UISplitViewController, и я пытаюсь получить событие из моего MasterViewController и полностью изменить DetailViewController. Так как я выяснил, это может быть сделано в основном, выполнив следующие действия:Xamarin Monotouch UISplitViewController: как я могу установить или создать делегат для UISplitViewController?

ViewControllers[1] = new MyNewViewController(); 

Когда я делаю это, ничего не изменится, хотя! Я знаю, что это связано с настройкой делегата, но я не знаю, где и как мне нужно это делать.

ответ

1

Переопределить 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(); 
+0

большое спасибо :) –

Смежные вопросы