我想要的是一个桌面视图,其顶部有广告视图,可用于浏览和刷新。现在我正在使用tableheaderview,但滚动,我需要广告继续。 viewforheader不滚动,但摆脱了标题所需的标准标题。如果我从tableVC继承,无论如何都要覆盖loadview来构建一个静态视图来保存广告然后在下面的tableview?我已经尝试过编写loadview并可以获取广告,但在尝试使用tableview时,我会在控制台中“无法恢复所选帧”。我正在使用culver的pull刷新技术,因为它很容易实现。我知道tableVC假设根视图是一个tableview所以我该如何解决这个问题呢?网上的每个解决方案都说使用标准的uiview控制器,但我卡住了刷新的原因
这是我的加载视图:
self.tableView = [[UITableView alloc] initWithFrame:CGRectMake(0, 60, 320, 400) style:UITableViewStylePlain];
self.tableView.dataSource = self;
self.tableView.delegate = self;
[self.view addSubview:self.tableView];
答案 0 :(得分:2)
让您的视图控制器继承自UIViewController
,但继续实施<UITableViewDataSource, UITableViewDelegate>
。将TableView添加为UIViewController的内置view
的子视图,指向File的所有者以获取数据源和委托。使表格视图的高度低于100%,并将广告作为主视图中的另一个视图,使其显示在表格的下方/上方。
来源:我在我的应用中执行此操作,并且它们在商店中。
答案 1 :(得分:1)
你可以尝试很多东西。
你可以像所有人一样停止继承UITableViewController
。如果您正在使用Culver的PullRefreshTableViewController
,请将其修改为子类UIViewController
。您需要添加tableView
属性,并采用UITableViewDataSource
和UITableViewDelegate
协议。
您可以将表格视图的contentInset
设置为在顶部留出空间,并在控制器中定义scrollViewDidScroll:
,以便在每个滚动条件上相应地重新定位广告视图。 (UITableView
子类UIScrollView
,因此如果您定义它们,它将调用UIScrollViewDelegate
方法。)