开发者社区> 问答> 正文

关于UpPopoverController.DidDismiss不触发

有一个UIPopoverController,有DidDismiss

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

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

如果popover被用户关闭,DidDismiss就触发正常。

如果popover通过viewcontroller关闭,DidDismiss就不能正常触发。

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

展开
收起
爵霸 2016-03-19 11:12:32 2054 0
1 条回答
写回答
取消 提交回答
  • 如果调用了popover.Dismiss,DidDismiss就不能触发

    更优的解决反方法是监听viewconvtrollerViewDisappearing,然后进行更新:

           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);
    2019-07-17 19:07:45
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载