Панель вкладок покрывает последнюю ячейку UITableView - PullRequest
11 голосов
/ 12 августа 2010

Я разрабатываю приложение на основе предустановки приложения на панели вкладок.На одной из вкладок у меня есть табличное представление, показывающее много данных, но половина последней ячейки в табличном представлении покрывается панелью вкладок, когда я прокручиваю до нижней части.

У любого есть решениек этому?

Ответы [ 12 ]

16 голосов
/ 06 декабря 2011

Добавление пробела сработало для меня:

//this prevent the tabbar to cover the tableview space
UIView *footer = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 1, 90)];
footer.backgroundColor = [UIColor clearColor];
myTableView.tableFooterView = footer;
11 голосов
/ 09 мая 2014

Это помогло (в Интерфейсном Разработчике):

TableView above TabBar

4 голосов
/ 23 октября 2013

Для этого есть пара решений.

1.) Предполагая, что вы используете полупрозрачные панели инструментов, вы должны сделать панели инструментов непрозрачными.

2.) Если вы используете StoryBoard и помещаете TableView в свой ViewController, предполагая, что это ViewController, а не TableViewController.

3.) Вы можете вручную добавить отступы / интервалы.

if ([self respondsToSelector:@selector(edgesForExtendedLayout)])
{
    self.edgesForExtendedLayout = UIRectEdgeNone;
    self.extendedLayoutIncludesOpaqueBars = YES;
    self.automaticallyAdjustsScrollViewInsets = NO;
}

или

UIEdgeInsets insets = UIEdgeInsetsMake (0,sizeOfTableView - sizeOfTabBar, 0, 0);
self.tableView.contentInset = inset;
self.tableView.scrollIndicatorInsets = inset;

Надеюсь, это поможет и удачного кодирования!

3 голосов
/ 12 августа 2010

Посмотрите на размер панели вкладок и соответственно настройте размер представления таблицы. Прочитайте документы по свойству frame, IB позволяет вам устанавливать размер, если вы используете IB для этой цели и т. Д.

2 голосов
/ 17 октября 2011

РЕАЛЬНЫЙ ОТВЕТ:

У меня была эта проблема, и я оказался здесь ... Так что, даже если она старая, вот как я решил эту проблему:

У меня был контроллер UITabBar с одной вкладкой, являющейся UIViewController, и он имел одну добавленную строку:

[self.view addSubview:navController.view];

Это неправильно .. Даже если код работает, концепция неверна (по крайней мере, в моем случае), navController должен быть напрямую связан с UITabBar как одна из вкладок ...

Итак, каков реальный ответ?

Вы, должно быть, неправильно реализовали контроллер навигации. Как доказательство, у меня была эта проблема, как я объяснил, а также Этот парень ...

1 голос
/ 18 июня 2015

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

1 голос
/ 12 сентября 2010

Я нашел единственное решение для этого, чтобы добавить мягкий нижний колонтитул для таблицы:

http://www.iphonedevsdk.com/forum/iphone-sdk-development/18180-resizing-uitableview-programatically.html

0 голосов
/ 30 июня 2017

Swift 3:

Это то, что отлично сработало для меня.Этот код не только останавливает показ последней ячейки за панелью вкладок, но и увеличивает показ прокрутки.Введите код в ваш viewDitLoad():

if let rect = self.navigationController?.tabBarController?.tabBar.frame
{
    let y = rect.size.height
    tableView.contentInset = UIEdgeInsetsMake( 0, 0, y, 0)
    tableView.scrollIndicatorInsets = UIEdgeInsetsMake(0, 0, y, 0)
}
0 голосов
/ 06 мая 2016

SWIFT

У меня была такая проблема, когда при вставке UITableViewController в UITabBarController последняя ячейка (или нижняя или большая ячейка) оставалась под TabBar, когдаполностью прокручивается вниз.После дня пробования различных кодов и обходных путей, которые не работали, я просто заново внедрил свой UITableViewController в контроллер навигации, который был встроен в контроллер TabBar.Интервал исправлен, и табличное представление очищает tabBar теперь.

0 голосов
/ 09 апреля 2015

Для меня это было просто, что табличное представление в UIViewController не имело никаких ограничений, как только я прикрепил к краям представления, оно исправило себя.

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