我目前正在尝试做的事情听起来很简单但是我还没有看到一个很好的例子或能够找到一个。
我目前正在通过以下方式向导航控制器添加视图:
ViewControllers.CompaniesViewController companiesViewCtrl = this.Storyboard.InstantiateViewController ("companySelectView") as ViewControllers.CompaniesViewController;
this.NavigationController.PushViewController(companiesViewCtrl, true);
它会显示一个包含公司列表的视图,我需要做的就是用户选择公司后,我会存储一些信息(我已经这样做了)但是将其返回到上一个视图做某事,也许举办活动。任何人都可以指出我正确的方向如何做到这一点?
谢谢:)
答案 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事件。