为啥没有调用第二个单点触控视图控制器工具栏按钮事件处理程序
Posted
技术标签:
【中文标题】为啥没有调用第二个单点触控视图控制器工具栏按钮事件处理程序【英文标题】:Why does a 2nd monotouch viewcontrollers toolbar buttons eventhandler not get called为什么没有调用第二个单点触控视图控制器工具栏按钮事件处理程序 【发布时间】:2012-10-02 09:21:32 【问题描述】:我有一个带有 RootViewController 的 monotouch 项目,它初始化加载视图控制器:-
this.AddChildViewController( secondViewController );
this.AddChildViewController( firstViewController );
View.AddSubview( firstViewController.View );
firstViewController.DidMoveToParentViewController( this );
每个 viewController 都包含一个工具栏,其按钮添加如下:
loaderButton = new MonoTouch.UIKit.UIBarButtonItem( UIBarButtonSystemItem.Action, loaderClickHandler );
或
closeButton = new MonoTouch.UIKit.UIBarButtonItem( "Close", UIBarButtonItemStyle.Done, new EventHandler( closeClickHandler ) );
loaderClickHandler 只是:
private void loaderClickHandler( System.Object sender, System.EventArgs e )
System.Console.WriteLine( "loaderClickHandler()" );
这一切都很好,(但是如果有更好的方法,请告诉我) 问题出在 secondViewController (与第一个基本相同,只是文本不同)。
当它被 RootViewController 切换到时:
this.Transition( firstViewController, secondViewController, 0.2, UIViewAnimationOptions.TransitionCrossDissolve, () => , (bool finished) => secondViewController.DidMoveToParentViewController( this ); );
它显示正常,但它的工具栏按钮在单击/触摸时不调用事件处理程序方法? 所有变量(loaderButton)都是类级别的。
有人知道为什么吗?还是我做错了什么?
【问题讨论】:
【参考方案1】:DOH!
在任何其他项目之后添加工具栏时会有所帮助!
【讨论】:
以上是关于为啥没有调用第二个单点触控视图控制器工具栏按钮事件处理程序的主要内容,如果未能解决你的问题,请参考以下文章