【问题标题】:UINavigationController & UITableviewController with different number of sublevels具有不同子级别数的 UINavigationController 和 UITableviewController
【发布时间】:2012-07-24 01:45:15
【问题描述】:

我正在使用具有 1 个主表视图的应用程序。

根据某些参数(例如BOOL sub),经过 1、2 或 3 个tableview 级别后,有一些单元格会指向detailview

应用行为如下:

UINavigationController -> UITableViewController (sub == YES) -> UITableViewController (sub == NO)-> DetailViewController

UINavigationController -> UITableViewController (sub == YES) -> UITableViewController (sub == YES) -> UITableViewController (sub == NO) -> DetailViewController

等等(最多 3 个级别)。

只有 1 个 UITableViewController 有人知道如何做到这一点(使用 storyboard)?

【问题讨论】:

    标签: uitableview ios5 uinavigationcontroller storyboard


    【解决方案1】:

    首先,从您的表格视图控制器在情节提要中定义两个名为"toDetail""toNextLevel" 的“通用”转场。一个 segue 应该导致细节控制器;另一个应该返回到表视图控制器。然后,实现tableView:didSelectRowAtIndexPath: 方法,条件是当有一个级别时将您移动到下一个级别,或者当没有下一个级别时将您移动到详细信息屏幕:

    -(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
        if ([myModel rowHasNextLevel:indexPath.row]) {
            [self performSegueWithIdentifier:@"toNextLevel" sender:self];
        } else {
            [self performSegueWithIdentifier:@"toDetail" sender:self];
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-03-03
      • 2013-12-14
      • 1970-01-01
      • 2020-04-28
      • 1970-01-01
      • 1970-01-01
      • 2018-10-07
      相关资源
      最近更新 更多