[英]Using multiple detail views with TableView
我試圖在我的標簽欄應用程序中實現一個表格視圖頁面。 我已經成功地制作了一個包含數據的表視圖,並希望借此將我帶到一個詳細視圖。 但是,我想為每個單元格提供單獨的詳細視圖,以便允許我使用UI創建更詳細的詳細視圖。 我提供了Seque的唯一ID來嘗試執行此操作。
目前,每當我按下按鈕時,它便崩潰了,並帶我到main.m
這是我的代碼:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
switch (indexPath.row) {
case 0:
[self performSegueWithIdentifier:@"showDetail1" sender:self];
break;
case 1:
[self performSegueWithIdentifier:@"showDetail2" sender:self];
break;
case 2:
[self performSegueWithIdentifier:@"showDetail3" sender:self];
break;
case 3:
[self performSegueWithIdentifier:@"showDetail4" sender:self];
break;
default:
break;
}
}
我得到的異常是:
“由於未捕獲的異常'NSGenericException'而終止應用程序,原因:'無法為Segue'showDetail2'找到導航控制器。僅當源控制器由UINavigationController的實例管理時,才可以使用推送Segues。'
謝謝!
在其中添加tableView
的ViewController
應該是NavigationController
的一部分。 如果ViewController
是NavigationController
的一部分,則只能將其推送。 其他嘗試使用Present Segue
。
解決方案1:
使您當前的其中已添加tableView
的ViewController
成為NavigationController
的一部分
如果您使用的是StoryBoard
,則選擇在其中添加了tableView的ViewController
。 選擇“控制器”后,選擇“ 編輯器\\嵌入\\導航控制器”
解決方案2:
如果您不想使用Navigation/Push
設計,則可以顯示ViewController
。 為此,您必須使用Present Segues
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.