如何在固定位置(无滚动)的 UITableView 后面插入 imageView?

How can I insert an imageView behind a UITableView in a fixed position (no scrolling)?

我正在尝试使用以下方法在 table 视图后面插入图像:

 UIImageView *imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"newpink120"]];
    imageView.frame=CGRectMake([[UIScreen mainScreen]bounds].size.width-60, [[UIScreen mainScreen]bounds].size.height-60-self.navigationController.navigationBar.frame.size.height, 60, 60);
    [self.tableView addSubview:imageView];
    [self.tableView sendSubviewToBack:imageView];

这似乎可行,但图像随 table 滚动。有没有固定在右下角的?

您的图像滚动是因为它已添加到表格视图内容中,当您滚动表格视图时,所有内容都会滚动。

但是您可以在 tableView 的超级视图中添加图像,在它后面。 例如,如果 tableView 在 self.view 中,您可以尝试:

UIImageView *imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"newpink120"]];
imageView.frame=CGRectMake([[UIScreen mainScreen]bounds].size.width-60, [[UIScreen mainScreen]bounds].size.height-60-self.navigationController.navigationBar.frame.size.height, 60, 60);
[self.view addSubview:imageView];
[self.view bringSubviewToFront:self.tableView];

(确保tableView有清晰的backgroundColor。)

要创建静态 table视图背景,您必须做两件事

1) 设置self.tableView.backgroundColor = [UIColor clearColor];

2) 然后用 UIImageView 初始化 table 背景视图,并设置要在那里显示的图像。

[self.tableView setBackgroundView:[[UIImageView alloc] initWithImage:[UIImage imageNamed:@"image.png"]] ];