Xamarin iOS RowSelected 事件导航到 ViewController
Posted
技术标签:
【中文标题】Xamarin iOS RowSelected 事件导航到 ViewController【英文标题】:Xamarin iOS RowSelected Event navigate to ViewController 【发布时间】:2014-04-25 12:49:45 【问题描述】:我有一个表格视图。我想当我单击一行以捕获列表上的行信息并将它们传递给 DetailScreen UIViewController 时。我已经使用 xamarin Studio 创建了 iPhone 视图控制器,并且对于我使用 Xcode 的布局。我正在尝试以下代码,但出现错误“System.NullReferenceException:对象引用未设置为对象的实例 " 我试过这个解决方案但没有成功:How to navigate to ViewController in Xamarin ios on RowSelected event
我的代码:
UIViewController parentController;
public override void RowSelected (UITableView tableView, NSIndexPath indexPath)
var dtscreen = new DetailScreen (mylist);
parentController.NavigationController.PushViewController(dtscreen,true);// Error System.NullReferenceException
tableView.DeselectRow (indexPath, true);
【问题讨论】:
您说您想将详细信息传递给另一个视图,但您的代码尝试推送视图控制器,您真正想要做什么? 我更新了我的问题。我想在 DetailScreen UIViewController 上传递这个列表 但是 DetailsScreen 是新视图还是现有视图? 我不是用代码创建视图控制器。我已经使用 xamarin studio xib 和 cs 文件创建了这个视图控制器 我的意思是,您必须实例化并在那里呈现该控制器还是已经呈现? 【参考方案1】:请更改下一部分代码:
public TableSource (List<Item> Items, UIViewController viewController)
_Items= Items;
parentController = viewController;
【讨论】:
以上是关于Xamarin iOS RowSelected 事件导航到 ViewController的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 Xamarin iOS PickView 获取价值?
当我从 UITableViewSource 单击 RowSelected 时如何打开 UIViewController
Kendo 网格 - 如何获取 RowSelected 上的行详细信息?
UITableViewDelegate 中的问题 - RowSelected 给出错误的 NSIndexPath