在UITableViewController添加的view都会添加到tableView上,而且会跟着tableView一起滚动。但是我要实现的是添加一个浮动的控件,锁定在屏幕上的某一个位置。于是我试着好几种方法。
- 1.将控件添加到
[self.navbarController.view addSubview:XX];,但是没有成功,当调整到下个页面的时候,还是会显示在navBarController上。 - 2.添加到当前
View上,然后根据UIScrollView的代理方式进行锁定。但是最终也没有能达到我想要的想过 - 4.添加到
self.view.window,实现方式和2类似 - 3.添加到
self.view.superview上,最终算是实现我想要的效果
e.g.:
- (void)setupMessageBtn {
UIButton *messageBtn = [UIButton buttonWithType:UIButtonTypeCustom];
messageBtn.frame = CGRectMake(frameW - 40 - 15, 22, 40, 40);
[self.view.superview addSubview:messageBtn];
@weakify(self);
[QFFramwork touchView:messageBtn action:^{
@strongify(self);
debugLog(@"点击了");
}];
}
总结:如果以后要是遇到此类需求,不太建议使用UITableViewController。