iPhone固定位置UITableView背景

tre*_*lig 14 iphone background uitableview

我正在构建一个不使用Interface Builder的iPhone应用程序.我在以下庄园中设置了分组UITableView的背景:

self.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"groupedBackground.png"]];

我正在尝试修复此背景图像,以便它不会与表格单元格一起滚动.有谁知道如何做到这一点?

Joe*_*out 45

我们发现它完全按照你的要求工作,如果不是使用backgroundColor,你可以分配给backgroundView,如下所示:

self.tableView.backgroundView = [[UIImageView alloc] initWithImage:
                 [UIImage imageNamed:@"background.png"]];
Run Code Online (Sandbox Code Playgroud)

然后表格单元格在背景上滚动,这是静止的.(我相信自SDK版本3.2以来一直可用.)


tit*_*coy 8

您可以使用图案图像实现静止背景,如下所示:

UIView *patternView = [[UIView alloc] initWithFrame:tableView.frame];
patternView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"groupedBackground.png"]];
patternView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
tableView.backgroundView = patternView;
Run Code Online (Sandbox Code Playgroud)


JFS*_*JFS 5

有点晚,但可能是所有其他人都在寻找解决方案.我可以通过调用parentViewController以下viewDidLoad方法来获得该工作UITableViewController:

self.parentViewController.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"background.png"]];
self.tableView.backgroundColor = [UIColor clearColor];
Run Code Online (Sandbox Code Playgroud)

或仅使用背景颜色:

self.parentViewController.view.backgroundColor = [UIColor scrollViewTexturedBackgroundColor];
self.tableView.backgroundColor = [UIColor clearColor];
Run Code Online (Sandbox Code Playgroud)

我花了一段时间来弄明白这一点,但现在它就像一个魅力.


Val*_*ora 1

您可以在 UITableView 下方放置一个附加视图并设置其背景,因此如果 UITableView 是透明的 - 您将实现您的目标 - 它将具有正确的背景并且不会滚动。