【问题标题】:Vertical list with complex viewcontrollers具有复杂视图控制器的垂直列表
【发布时间】:2014-11-18 10:05:23
【问题描述】:

我有复杂UIViewControllers 的列表。此列表应以垂直形式显示。我想知道如何显示它们。我试过UIPageViewController,但它只显示一个子控制器。我需要尽可能多地显示它们(如UITableViewUIScrollView)。我不能使用UITableView,因为它不支持嵌套的UIViewControllers。那么我必须使用UIScrollView并为child controllers实现自己的释放机制还是有其他方法?

【问题讨论】:

    标签: ios objective-c uiscrollview uipageviewcontroller


    【解决方案1】:

    你可以使用 UITableView:

    在tableViewDelegate中放

    - (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
    {    
        //calc cell height
        return height;
    }
    

    比在这个方法中做的更喜欢那里:

    - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
    { 
        UITableViewCell *cell = [tableView    dequeueReusableCellWithIdentifier:COMMON_CELL_IDENTIFIER];
    
        [self addChildViewController:viewControllers[indexPath.row]];
    
        [cell.contentView addSubview:[viewControllers[indexPath.row] view]];
    
        return cell;
    }
    

    【讨论】:

    • 这可以工作,但我不确定子控制器是否会收到 viewWillDisapper 调用,通常该模型确认 Apple 视图控制器包含规则
    • 将收到,我愿意使用它
    猜你喜欢
    • 2013-10-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-25
    • 2010-11-09
    相关资源
    最近更新 更多