将背景图像设置为uitableview?

时间:2011-07-03 20:59:44

标签: objective-c ios ios4 uitableview

我想将图片设置为uitableview的背景。这是我正在使用的代码:

 self.tableView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"background_tableview.png"]];

这显示了正确的图像,但只要表格填充了一些奇怪的事情就会发生。部分图像显示在每个tableviewcell中,图像也随表格一起滚动。如何使图像保持固定并且每个tableviewcell不显示图像的一部分?

谢谢,
TC

4 个答案:

答案 0 :(得分:13)

如果您不想滚动,请不要设置UITableView的背景。相反,您希望将UITableView的背景设置为透明 - 并在UITableView后面提供您自己的固定背景。

为此,首先将UITableView的背景设置为“Clear Color”。

以编程方式: self.tableView.backgroundColor = [UIColor clearColor];

您还需要取消选中不透明复选框。

以编程方式: self.tableView.opaque = NO;

UITableView后面的视图中设置所需的固定背景。

确保您的UITableViewCell中的任何子视图也是backgroundColor = [UIColor clearColor];UITextView s等)。

Example Xcode 4 / Interface Builder setup

答案 1 :(得分:6)

TableView背景图片

self.tableView.backgroundView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"your_image"]];

不要忘记用图像的类型写出文件名。实施例:

self.tableView.backgroundView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"myPhoto.png"]];

答案 2 :(得分:0)

如果在UIViewController内,您添加tableViewImageview,则上述解决方案有效 在代码中,创建tableView的插座并将其连接到xib中的tableView,将视图连接到UIView。将图片放到UIImageView,然后点击imageView。选择:

  

编辑器>安排>发送回去

viewDidLoad的{​​{1}}方法中,添加以下行:

UIViewController

它对我有用:)

答案 3 :(得分:0)

/ *在uitableview中设置Backgroundimage,如下所示* /

UIImageView *imguser = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"user"]];
[tblUser setBackgroundView:imguser];