2013-10-24 3 views
0

Я разрабатываю приложение чата для Ipad и я задаюсь вопросом о родном приложении сообщений, раскладка как этот DesignIpad дизайн с несколькими tableviews

Так вот два tableviews в одном экране, но как работать с двумя tableviews в один контроллер правильно? Кроме того, что панель навигации, это единая навигационная панель и какой-то разделитель? Любая помощь будет оценена по достоинству. Спасибо

ответ

1

Там является контроль называется UISplitViewController

Можно также положить 2 отдельные UITableViews на свой UIViewController, а затем обработать его в методах делегатов/DataSource, то есть:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 
    { 
     if(tableView == _leftTableView) 
     { 
      static NSString *CellIdentifier = @"Cell"; 
      UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; 

      if (cell == nil) { 
       cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier]; 
      } 

      //fill cell data here 

      return cell; 
     } 
     else if(tableView == _rightTableView) 
     { 
      static NSString *CellIdentifier = @"Cell"; 
      UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; 

      if (cell == nil) { 
       cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier]; 
      }  

      //fill cell data here 

      return cell; 
     } 
     return nil; 
    } 
0

Ваша ссылка не работает, так что трудно точно сказать, что вы пытаетесь сделать.

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

Вы также можете самостоятельно управлять представлениями таблиц. Не используйте UITableViewController; самостоятельно настраивать UIViewController. Все методы представления делегата таблицы и источника данных передаются в представлении таблицы в качестве первого параметра, поэтому вы можете написать свои методы для ветвления на основе табличного представления, которое вызывает вас.

Другим вариантом было бы использовать схему контроллера родительского/дочернего вида, а ваш основной контроллер представления содержать 2 разных дочерних объекта UITableViewController и настроить протокол для контроллеров представления дочерних таблиц, чтобы поговорить с родителем.

У меня есть приложение на github, которое является примером использования этой техники. Это довольно легко в iOS 6 или более поздней версии, поскольку вы можете использовать встроенные segues. Here is the link.

Мое приложение основано на статическом представлении таблицы. Его нужно будет изменить, чтобы иметь дело с отдельными источниками данных для каждого вида таблицы.

Смежные вопросы