Han*_*pen 50 iphone background uitableview
有没有办法在UITableViewController上设置背景视图?
我尝试使用我正在使用的代码UIViewController
,但视图覆盖了表视图的所有内容.如果我在其中添加背景视图cellForRowAtIndexPath-method
,则根本不显示.有没有人以前做过这个或者知道如何做到这一点?这是我正在使用的代码:
UIImage *image = [UIImage imageNamed: @"background.jpg"];
UIImageView *backImage = [[UIImageView alloc] initWithImage: image];
[self.view addSubview: backImage];
[self.view sendSubviewToBack: backImage];
Run Code Online (Sandbox Code Playgroud)
Fra*_*ade 72
我知道这已经很长时间了,但仅仅是为了记录......我想我找到了一个更好的解决方案UITableView.backgroundView
:
UIImageView *imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"lisbon.png"]];
self.tableView.backgroundView = imageView;
[imageView release];
Run Code Online (Sandbox Code Playgroud)
我尝试在iPhone上使用320x480的图像尺寸,并且工作完美(我也尝试过使用.jpg).
Nic*_*rge 68
(这与Hans Espen上面的解决方案基本相同,但为了简洁起见使用便利方法)
把它放在你的[UITableViewControllerSubclass viewDidLoad]
方法中:
self.tableView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"BackgroundPattern.png"]];
Run Code Online (Sandbox Code Playgroud)
避免在viewDidLoad方法中使用几个自动释放是没有意义的,因为它很少被调用(当视图实际加载时),因此对性能的影响可以忽略不计.
注意您应始终在iPhone上使用PNG图像,而不是JPEG或任何其他格式.
实际上,我让它工作了!:)
NSString *backgroundPath = [[NSBundle mainBundle] pathForResource:@"background" ofType:@"jpg"];
UIImage *backgroundImage = [UIImage imageWithContentsOfFile:backgroundPath];
UIColor *backgroundColor = [[UIColor alloc] initWithPatternImage:backgroundImage];
self.tableView.backgroundColor = backgroundColor;
[backgroundColor release];
Run Code Online (Sandbox Code Playgroud)
对于Swift使用这个,
self.tableView.backgroundView = UIImageView(image: UIImage(named: "backgroundImage.png"))
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
52266 次 |
最近记录: |