我需要构建一个类似Airbnb的表索引来显示房地产,为此我定制了一个高度为200的原型UITableViewCell和两个自定义标签(使用Storyboard创建)和一个背景图像(以编程方式添加)。所有这些都是使用Storyboard添加的TableViewController。
正在从JSON文件中提取数据并包含10个项目。但是在iPhone模拟器(4英寸)中,
a)它不会滚动超过前三项。我只能看到第三项的上半部分。如何将所有10个项目滚动到最后一个项目的底部?
b)该表与顶部iPhone状态栏重叠(具有电池和网络状态)。故事板不允许调整TableView的大小以从顶部或底部排除任何填充。如何从桌子的顶部和底部留下一些填充物?
以下是 MainViewcontroller.m
中的 cellForRowAtIndexPath- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell";
RealEstateTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
RealEstate *estates = [self.allEstate objectAtIndex:indexPath.row];
[self.tableView setSeparatorStyle:UITableViewCellSeparatorStyleSingleLineEtched];
cell.titleLabel.text=estates.title;
cell.infoLabel.text=[NSString stringWithFormat:@"%@ | %@",[properties formattedDate], [estates organiser]];
NSURL *url = [NSURL URLWithString:estates.photoURL];
NSData *data =[NSData dataWithContentsOfURL:url];
UIImage *img=[UIImage imageWithData:data];
[cell.backgroundView setContentMode:UIViewContentModeScaleAspectFill];
cell.backgroundView = [[UIImageView alloc] initWithImage:img];
cell.selectedBackgroundView = [[UIImageView alloc] initWithImage:img];
return cell;
}
答案 0 :(得分:0)
请确保您添加了以下UITableView
委托方法:
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
return 200;
}
对于第二种情况,您可以尝试使用此link。
答案 1 :(得分:0)
我不确定这是否有资格作为此问题的解决方案,但该应用程序运行良好,没有任何上述问题在实际的iPhone上。现在我正在iPhone上进行所有进一步的构建和测试。我会在最后回到模拟器,希望它也应该在那里运行。