UITableView добавить подпредставление - PullRequest
0 голосов
/ 12 октября 2011

Я хочу добавить подпредставление в UITableView

Я пытался так:

[self.tableView addSubView:myView.view];

Я не получил никакой ошибки, но представление не добавляется, кто-нибудь может помочь ...?

Спасибо.

Ответы [ 5 ]

5 голосов
/ 25 июня 2012

Попробуйте это:

view.frame = CGRectMake(view.frame.origin.x, -view.frame.size.height, view.frame.size.width, view.frame.size.height);
[self.tableView addSubview:view];
[self.tableView setContentInset:UIEdgeInsetsMake(view.frame.size.height, 0, 0, 0)];

это добавит вид над ячейками и переместит ячейки вниз на высоту добавленного вида.

2 голосов
/ 05 августа 2013

Оба значения self.tableView и myView не должны быть nil

Что вы имеете в виду myView.view?

этот кусок кода хорошо работает для меня:

UIView *headerView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, 200)];
UILabel *labelView = [[UILabel alloc] initWithFrame:CGRectMake(20, 80, 200, 20)];
labelView.text = @"TEST";
[headerView addSubview:labelView];

[self.tableView addSubview:headerView];
2 голосов
/ 12 октября 2011

Я не понимаю, почему вы добавляете подпредставление в Tableview.Может быть, вы хотите добавить что-то в каждую ячейку tableView.Вы можете сделать это, добавив:

[cell.contentView addSubview:yourSubView];

в

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{    
}
0 голосов
/ 04 сентября 2015

Просто замените строку кода на следующую:

[self.tableView.superview addSubview:myView];

Примечание:

Я не уверен насчет myView.view в строке кода, которую вы упомянули в своем вопросе.

0 голосов
/ 13 мая 2015

Для Swift:

let foregroundView = UILabel(frame: CGRectMake(0, 0, tableView.bounds.size.width, tableView.bounds.size.height))
foregroundView.backgroundColor = UIColor.whiteColor()
tableView.addSubview(foregroundView)
foregroundView.bringSubviewToFront(tableView)

Вы также можете удалить его:

foregroundView.removeFromSuperview()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...