objc — пробел между заголовком табличного представления и элементом управления обновлением

#objective-c #tableview

#objective-c #просмотр таблицы

Вопрос:

Я создаю табличное представление и назначаю им заголовок и элемент управления обновлением светло-синего цвета.

Когда я нажимаю на элемент управления обновлением.. вы можете увидеть белую линию между заголовком и элементом управления обновлением.. сначала он больше, а затем становится меньше, поэтому я не смог получить хорошую картинку.

введите описание изображения здесь

     self.tableView = [[UITableView alloc] init];

    self.tableView.separatorStyle = UITableViewCellSelectionStyleNone;
    self.tableView.delegate = self;
    self.tableView.dataSource = self;

    self.tableView.keyboardDismissMode = UIScrollViewKeyboardDismissModeInteractive;
    self.tableView.tableHeaderView = self.bannerView;
    [self.view addSubview:self.tableView];
  

Я уже пытался установить фактический вид, в который добавляется цвет фона tableViews, на светло-синий, но это ничего не дает.

Комментарии:

1. Если я изменю цвет фона tableview на светло-голубой, это сработает, но я хочу, чтобы нижняя часть табличного представления оставалась белой. Есть идеи?

2. вы использовали отладку иерархии представлений, чтобы выяснить, что это за белая вещь?

3. Похоже, что это UITableViewWrapperView … что означает, что если, как я уже сказал, я изменю фон tableview, это сработает, но смогу ли я добавить, возможно, вложенный просмотр в заднюю часть uitableview и разместить его вверху, чтобы этого не произошло?

4. вы пробовали предоставлять прозрачный или сплошной UITableView.backgroundView ? Я уверен, что это должно решить вашу проблему.

Ответ №1:

Эта белая строка на моем представлении может быть 2 вещами.

1) Это просто проблема с пикселями симулятора, со мной часто случается, а затем я просто тестирую на своем устройстве и отлично работает.

2) Возможно, у вас self.bannerView есть ограничение botton или одна строка, и это может привести к появлению этой маленькой белой линии.

я советую установить фоновый цвет как чистый цвет и проверить, self.bannerView нет ли у него небольшого поля или одной строки

Нравится:

 [self.tableView.tableHeaderView setBackgroundColor:[UIColor clearColor]];
self.tableView.backgroundColor = [UIColor clearColor];