我在iPhone屏幕的每一侧都有两个带花的图像。我想将这些图像添加到UITableView背景中。
问题是:如何以编程方式添加或使用故事板? 我想在每个iPhone屏幕上使用这种花,是否可能?或者我应该在故事板中的每个ViewController上添加它吗?
UIImageView *leftFlowersIView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 36, 455)];
[leftFlowersIView setImage:[UIImage imageNamed:@"flower_left.png"]];
[self.tableView.backgroundView addSubview:leftFlowersIView];
UIImageView *rightFlowersIView = [[UIImageView alloc] initWithFrame:CGRectMake([UIScreen mainScreen].bounds.size.width - 36, 0, 36, 455)];
[rightFlowersIView setImage:[UIImage imageNamed:@"flower_right.png"]];
[self.tableView.backgroundView addSubview:rightFlowersIView];
我收到了空白背景。
[self.view addSubview:leftFlowersIView];
它可以工作,但是当我向下滚动时 - 背景也是滚动的。
self.tableView.backgroundView = leftFlowersIView;
图像被拉伸以填满屏幕。
先谢谢,Artem。
UIImageView *backgroundIView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, [UIScreen mainScreen].bounds.size.width, [UIScreen mainScreen].bounds.size.height)];
UIImageView *leftFlowersIView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 36, 455)];
[leftFlowersIView setImage:[UIImage imageNamed:@"flower_left.png"]];
[backgroundIView addSubview:leftFlowersIView];
UIImageView *rightFlowersIView = [[UIImageView alloc] initWithFrame:CGRectMake([UIScreen mainScreen].bounds.size.width - 36, 0, 36, 455)];
[rightFlowersIView setImage:[UIImage imageNamed:@"flower_right.png"]];
[backgroundIView addSubview:rightFlowersIView];
self.tableView.backgroundView = backgroundIView;
答案 0 :(得分:2)
为此你可以制作一个框架等于桌面视图框架的单个图像,然后只需添加以下代码:
tableview.backgroundColor = [UIColor colorWithPatternImage:yourimage];
答案 1 :(得分:1)
解决此问题的正确方法是将-[UIColor clearColor]
设置为属性-[UITableView backgroundColor]
,然后使用您的两张图片:
UIImageView
,将其添加到UIView
作为子视图(下面 UITableView
)UIImage
的实例
UIImage
创建可调整大小的-[UIImage resizableImageWithCapInsets:]
。你应该指定UIEdgeInsetsMake(a,b,c,d),其中:
UIImage
设置为-[UIImageView image]
属性