我尝试在X-Code 7上使用Objective-C开发应用程序。
假设我在 UITableViewController 上添加了表格视图和一些表格查看单元格。我添加了所有表格查看单元格,我需要将“页脚”与“页脚”分开。坚持在底部。
如何分隔'页脚'所以它可以粘在屏幕的底部?
答案 0 :(得分:2)
这里有2个解决方案(至少)。
(警告!不要这样做!这个版本的实施速度更快,但这是非常糟糕的做法)
反正...
在TableViewController的.m文件中:
@interface TableViewController()
@property (strong, nonatomic) UITableView *myTableView;
@end
@implementation TableViewController
- (void)viewDidLoad
{
[super viewDidLoad];
CGFloat footerHeight = 60;
self.myTableView = self.tableView;
self.view = [[UIView alloc] initWithFrame:self.view.bounds];
self.view.backgroundColor = self.myTableView.backgroundColor;
CGRect frame = self.myTableView.frame;
frame.size.height -= footerHeight;
self.myTableView.frame = frame;
[self.view addSubview:self.myTableView];
//Create your footer view, set frame to it and add as subView
UIView *footerView = ...
footerView.frame = CGRectMake(0, self.myTableView.frame.size.height, self.view.frame.size.width, footerHeight);
[self.view addSubview:footerView];
}
//...
@end
请注意,这是一个直接在SO编辑器中编写的快速代码,因此可能会出现一些语法错误。
(推荐的解决方案)
在storyboard中创建一个新的ViewController,并从UIViewController(比如ParentVC)创建一个新的类,并将该类名设置为storyboard中的ViewController。添加一个容器和一个UIView(放在底部。这将是你的页脚视图)。将TableViewController嵌入Container中。 它看起来像这样:
从TableViewController,您可以通过调用
来访问ParentVC
(ParentVC *)self.parentViewController
。
反之亦然:从父母那里你可以打电话:
(TableViewController *)self.childViewControllers.firstObject
。