繁体   English   中英

在iOS应用程序中使用viewForHeaderInSection方法

[英]using viewForHeaderInSection method in iOS application

我有一个带有多个细分的分组的UITableView。 我想在页脚的每个段下面都有一个按钮,当按下该按钮时,会将用户带到另一个视图控制器(有一些选项-要在目标VC中加载的数据模型)。 有问题的两个ViewController由UINavigationController管理。

我不确定实现此目标的最佳方法是...

我努力了:

  1. 在IB中创建每个UIView(使用按钮),然后尝试将视图添加到此处的页脚。 我认为这是不可能的。

  2. 纯粹用代码创建UIView,添加然后将它们添加到每个节的页脚中。 这很好用,但是这里的问题是我无法在IB中连接我的segue和segue标识符。 我正在使用prepareForSegue方法将正确的数据模型发送到目标VC(取决于按下哪个段页脚按钮),因此我需要这样做。 这里是否有替代方法,我可以触发以其他方式发送数据模型吗?

谢谢,詹姆斯

1是可能的。

将您的客户视图从笔尖中拉出,就像将其他自定义视图从“笔尖”中加载一样 然后使用以下命令添加它:

- (UITableViewHeaderFooterView *)headerViewForSection:(NSInteger)section

编辑抱歉,并不意味着暗示#2也不可行。

- (id)instantiateViewControllerWithIdentifier:(NSString *)identifier

// like this:
UIViewController * vc = [[self storyboard] instantiateViewControllerWithIdentifier:@"TheNewView"]
[self.navigationController pushViewController:vc animated:YES];

使用选项2,从视图控制器而不是从特定视图或按钮创建序列。 给它提供一个有意义的标识符,然后在按钮的操作方法中,在视图控制器上调用performSegueWithIdentifier:sender: 您可以传入任何您希望用作视图控制器的对象,包括索引路径或包含节标识符的NSNumber,因此您可以在prepareForSegue中访问它并使用数据模型的适当部分。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM