iphone - MonoTouch : UpPopoverController. DidDismiss 未触发

标签 iphone ios ipad xamarin.ios uipopovercontroller

我有一个 UIPopoverController,它连接了 DidDismiss:

           popYear.PresentFromBarButtonItem(btnYear,UIPopoverArrowDirection.Any,true);

           popYear.DidDismiss += (sender, args) => {
              Console.WriteLine("Bye bye");
           };

DidDismiss 会在用户点击弹出框外 关闭弹出框时正常触发。

但是,当弹出窗口在它托管的 View Controller 中关闭时,DidDismiss 不会触发:

        tbhCLose.Tapped+= () => {
           if(PopOver!=null)
             PopOver.Dismiss(false); //Won't cause DidDismiss to fire
        };

最佳答案

当调用 popover.Dismiss 时,DidDismiss 不会触发。

更好的选择是监听 viewconvtroller 的 ViewDisappearing 并在那里进行更新"

           var uc = new YearViewController(SelectedYear);
           uc.ViewDisappearing+= (sender, e) => {
              this.SelectedYear = uc.SelectedYear;
              Update();
           };
           popYear = new UIPopoverController(uc);
           uc.PopOver = popYear;
           popYear.PresentFromBarButtonItem(btnYear,UIPopoverArrowDirection.Any,true);

关于iphone - MonoTouch : UpPopoverController. DidDismiss 未触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14544633/

相关文章:

iphone - 在相机捕获时收集 GPS 位置和指南针方向?

ios - IOS 应用程序中的 Firebase 云消息传递 (FCM) 无法正常工作

iphone - 防止 UITabBar 将渐变应用于其图标图像

ios - 在 UIPopoverController 中设置 UISwitch 状态

ios - 物理体的轮廓通过我的 swift SpriteKit 游戏中的所有其他节点显示

iphone - 在没有按钮连接的情况下以编程方式执行 Segue?

ios - dyld:在iOS 8上构建到真实设备时未加载库

ios - TestFlight App 安装但未在 TestFlight App Display 中显示已安装(TestFlight 显示已安装 90%)

ios - iPad 应用程序作为 Excel 模型的包装器

objective-c - 如何使用 UIPopOverController 制作一个在 iPhone 上使用 ImagePicker 的 iPhone 应用程序?