从其他项目推送ViewController时出错

时间:2015-01-26 12:08:26

标签: c# ios uiviewcontroller xamarin pushviewcontroller

在第一个项目中,我有一个UIButton。当我触摸它时,将从另一个项目打开其他UIViewController。但我有一个问题:

这是第一个项目的代码,我将用它来调用另一个项目中的其他UIViewcontroller

public partial class SomeSoluctionViewController : UIViewController
{
public SomeSoluctionViewController (IntPtr handle) : base (handle)
{
}

        public override void ViewDidLoad ()
            {
                base.ViewDidLoad ();
                PushedClassController pushedclass = PushedClass.AppDelegate.Storyboard.InstantiateViewController ("PushedClass") as PushedClassController;

                CallButton.TouchUpInside += (object sender, EventArgs e) => {
                    this.NavigationController.PushViewController (pushedclass, true);
                };

                // Perform any additional setup after loading the view, typically from a nib.
            }
    }

我使用PushViewController作为Xamarin的网站指示

我使用标识符实现第二个类。

在PushedClassController的AppDelegate上:

public static UIStoryboard Storyboard = UIStoryboard.FromName ("MainStoryboard", null);

我在上面使用它。

这是第二个项目中的pushView:

 namespace PushedClass
            {
              ** [Register ("PushedClass")]**
                public partial class PushedClassController : UIViewController
                {
                    public PushedClassController (IntPtr handle) : base (handle)
                    {
                    }
                }
            }

注册" PushedClass"

日志:抛出Objective-C异常。名称:NSInvalidArgumentException原因:Storyboard()不包含带有标识符' PushedClass'

的视图控制器

1 个答案:

答案 0 :(得分:0)

在xamarin中打开推送的项目。

单击底部的黑条,选择要显示的视图控制器。

在标识下的设计器属性栏中,为故事板ID 恢复ID 指定唯一ID到PushedClass