从另一个视图Xamarin.iOS返回数据

时间:2016-04-21 19:03:08

标签: c# ios .net xamarin xamarin.ios

我目前正在尝试做的事情听起来很简单但是我还没有看到一个很好的例子或能够找到一个。

我目前正在通过以下方式向导航控制器添加视图:

ViewControllers.CompaniesViewController companiesViewCtrl = this.Storyboard.InstantiateViewController ("companySelectView") as ViewControllers.CompaniesViewController;
this.NavigationController.PushViewController(companiesViewCtrl, true);

它会显示一个包含公司列表的视图,我需要做的就是用户选择公司后,我会存储一些信息(我已经这样做了)但是将其返回到上一个视图做某事,也许举办活动。任何人都可以指出我正确的方向如何做到这一点?

谢谢:)

1 个答案:

答案 0 :(得分:1)

最简单的解决方案是向CompaniesViewController添加一个事件,并在用户选择公司时将其提升。推送companiesViewCtrl的导航控制器可以订阅该事件,并在选择公司时收到通知。

class CompaniesViewController
{
    public event Action<Company> CompanySelected;

    public override void RowSelected (UITableView tableView, NSIndexPath indexPath)
    {
        //Raise CompanySelected event if it isn't null and pass selected company.
    }
}

现在您要做的就是在推送控制器之前订阅CompanySelected事件。