我在从UITableViewController导航到UIViewController时遇到了一些问题。
我要做的是创建一个应用程序,允许用户在SAP中搜索部件并将其显示在一个简单的表中。用户点击一行后,就会打开一个详细信息页面。
不幸的是导航无法正常工作,我不明白为什么。我使用的是包含UINavigationController的故事板 - > UITableViewController - >的UIViewController。
我通过在Visual Studio 2015 Designer中点击控制键并从TableCell绘制一条线到我的UIViewController,将segue从我的UITableViewController设置到详细页面(UIViewController)。我看到表格单元格有一个肥胖的蓝色边框。
在此之后将segue标识符设置为" PartDetailSegue"。在我的UITableViewController上,我覆盖了PrepareForSegue函数。
当我向PrepareForSegue函数添加断点并启动应用程序时,单击表格单元格时不会调用该函数。我有什么遗漏的吗?
我的UITableViewContoller中的代码
public override void PrepareForSegue(UIStoryboardSegue segue, NSObject sender)
{
if (segue.Identifier == "PartDetailSegue")
{
var navctlr = segue.DestinationViewController as PartDetailViewcontroller;
if (navctlr != null)
{
var rowPath = TableView.IndexPathForSelectedRow;
var item = ((PartsTableViewDataSource)TableView.Source).GetItem(rowPath.Row);
navctlr.SetPart(this, item);
}
}
}
我正在使用Visual Studio 2015 Update 3.安装了Xamarin的最新更新。
答案 0 :(得分:1)
如果您使用UITableViewSource并通过DequeueReusableCell(" SomeName")在GetCell函数中创建单元格,请确保在故事板中原型表视图单元格设置了相同的标识符。 OtherWiese DequeueReusableCell不会返回原型单元格的模板,知道segue。