NavigationBar не нужно прокручивать с помощью UITable - PullRequest
1 голос
/ 24 сентября 2010

Я разрабатываю приложение для iPhone.Я использую UITable подклассы UITableViewController.Я добавил NavigationBar в представление: UINavigationBar *navBar = [[UINavigationBar alloc] initWithFrame: CGRectMake(0.0f, 0.0f, 320.0f, 48.0f)];[self.tableView addSubview:navBar];, теперь проблема в том, что панель навигации прокручивается вниз вместе с таблицей, и это то, чего я хочу избежать.Можно ли избежать этого с помощью UITableViewController?

1 Ответ

3 голосов
/ 24 сентября 2010

Вы говорите

Я использую подклассы UITable UITableViewController

Полагаю, вы используете UITableViewController с подклассами, который, естественно, содержит UITableView. Ваша проблема вызвана тем фактом, что вы вставили панель навигации в UITableView или, точнее, в UIScrollView, который является частью TableView. В зависимости от ваших потребностей у вас есть два варианта:

  1. Если вы хотите, чтобы ваше приложение вело себя, например, как Почта (т. Е. Ваш TableView будет только одним элементом в структуре представлений, с помощью которого вы можете копать), вам нужно UINavigationcontroller и сделать ваш TableViewController первым представлением NavigationController, как, например, когда вы открываете шаблон «Navigation based» в Xcode , Контроллер UINavigation уже будет содержать панель UINavigationBar, поэтому вам не о чем беспокоиться.
  2. Если по какой-то причине это не то, что вам нужно, вам придется создать UIView, который содержит UINavigationBar, а также UITableView. Поскольку выполнение такой настройки с помощью UITableViewController, как известно, довольно сложно, вы можете отказаться от вашего TableViewController и заменить его на простой ViewController, который реализует как UITableViewDelegate, так и UITableViewDataSource -Delegate. См. этот пост для получения дополнительной помощи.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...