Добавление подпредставления ниже моего UITableView - PullRequest
1 голос
/ 24 декабря 2008

Я экспериментирую с программным добавлением подпредставления под моим UITableView. Я использую образец скручивания карты из книги Эрики Садун, чтобы проверить, действительно ли вид под моим UITableView - это вид, который я добавляю. Однако, когда UITableView свернется, цвет представления ниже будет белым, а не черным, который я добавляю в коде ниже. Любая идея, что я делаю неправильно, чтобы вставить мой новый вид под UITableView?

CGRect frame = [self.tableView frame];
NSLog(@"frame height: %f, frame width: %f", frame.size.height, frame.size.width);
NSLog(@"tableView origin: %f, %f", [self.tableView frame].origin.x, [self.tableView frame].origin.y);
NSLog(@"frame origin x: %f, y: %f", frame.origin.x, frame.origin.y);
UIView *pickerView = [[UIView alloc] initWithFrame:frame];
pickerView.backgroundColor = [UIColor blackColor];
pickerView.frame = frame;
pickerView.userInteractionEnabled = YES;

[self.tableView insertSubview:pickerView belowSubview:self.tableView];

Также подтверждено, что мой вид верхнего уровня имеет только два вида. Вот вывод из [self.view subviews]:

   2008-12-23 20:44:20.923 MySample[11966:20b] subviews: (
      <UITableView: 0x523ea0>,
      <UINavigationBar: 0x528b10>
   )

1 Ответ

9 голосов
/ 24 декабря 2008

Вы пытаетесь вставить Subview: underSubview: с представлением, возвращаемым к себе. Если вы пытаетесь вставить подпредставление НИЖЕ таблицы, вам необходимо отправить суперпредставлению таблицы сообщение:

[self.tableView.superview insertSubview: pickerView belowSubview: self.tableView];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...