这是原始代码。我是iOS开发的初学者,我应该如何修改代码,以便在tableview的底部加载Admob广告?我尝试按照http://jmsliu.com/1207/add-google-admob-in-ios-apps.html中的教程进行操作,但无法使其工作。
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return [self.prefixArray count];
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
}
NSDictionary *d = self.prefixArray[indexPath.row];
cell.textLabel.text = d[kMDTitleKey];
return cell;
}
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
[tableView deselectRowAtIndexPath:indexPath animated:YES];
NSDictionary *d = self.prefixArray[indexPath.row];
NSInteger entryID = [d[kMDIdentifierKey] integerValue];
self.searchBar.text = d[kMDTitleKey];
[self.db fetchDefinitionsWithID:entryID callback:^(NSDictionary *response) {
NSString *HTML = [self.HTMLRenderer renderHTML:response];
[self.webView loadHTMLString:HTML baseURL:nil];
[self.searchDisplayController setActive:NO animated:YES];
}];
}
答案 0 :(得分:1)
您分享的教程使用UITableView
的标题header
来展示广告。可能这不是一个好主意,因为您可能需要将这些标题用于您自己的目的。
我知道你想把广告放在屏幕的底部。在这种情况下,最好使用UIView
UITableView
以下的UITableViewController
。在这种情况下,您需要更改UIViewController
UITableView
才能执行该操作。
如果要添加self.prefixArray
底部的添加,您应该将其视为单元格N + 1(N为{{1}}的大小)并更新表格回调以处理特殊情况正确。
答案 1 :(得分:0)
您应该将广告视图添加为tableview的页脚视图。实施
- (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section
您将在其中创建广告视图并将其作为页脚视图返回
不要将广告视图放在单元格中,因为它会出列,而且它只是错误的位置。