我正在开发iOS App。
我想将UIImageView
添加到UITableView
。
我正在写下以下代码,但UIImageView
位于UITableView
之后。
可能我认为在加载UITableView
数据后,应该实现[self.view bringSubviewToFront:self.imageView];
,但我不知道该怎么做。
你能告诉我解决方案吗?
@property (strong,nonatomic) UIImageView *imageView;
@property (weak, nonatomic) IBOutlet UITableView *tableView;
- (void)viewDidLoad
{
self.imageView = [[UIImageView alloc] initWithFrame:CGRectMake(240,100,77,77)];
self.imageView.image = [UIImage imageNamed:@"hoge"];
[self.view addSubview:self.imageView];
}
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
return 1;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection: (NSInteger)section
{
return 100;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
{
// Usual TableViewCell process
}
答案 0 :(得分:1)
如果要为带有图像视图的tableview设置背景,可以在viewDidLoad中设置如下:
UIImage *image = [UIImage imageNamed:@"image.png"];
self.tableView.backgroundView = [[UIImageView alloc]initWithImage:image];
答案 1 :(得分:0)
目前还不是很清楚,但您可以直接尝试:
cell.imageView.image = [UIImage imageNamed:@"image.png"];
或
UIImageView *imv = [[UIImageView alloc]initWithFrame:CGRectMake(3,2, 20, 25)];
imv.image=[UIImage imageNamed:@"hoge.png"];
[cell addSubview:imv];
或者如果您想将图像添加为背景:
UIImage *image = [UIImage imageNamed:@"hoge.png"];
self.tableView.backgroundView = [[UIImageView alloc]initWithImage:image];
答案 2 :(得分:0)
假设您希望在给定时间可以看到一个元素(图像视图或表格视图),则可以采用一种方法 -
[myView insertSubview:[self tableView] belowSubview:[self imageView]];
另一种方法可以是(假设您在视图顶部添加tableview和图像视图) -
int tableViewIndex = [[self.view subviews] indexOfObject:[self tableView]];
[self.view insertSubview:[self imageView] atIndex: tableViewIndex];
再一次 -
[[self view] insertSubview:[self tableView] belowSubview:[self imageView]];
简单的(替代你的想法) -
[[self view] sendSubviewToBack:[self tableView]];
答案 3 :(得分:0)
尝试使用self.tableView.tableHeaderView = headerView;
,其中headerview是UIImageView