Несколько столбцов в iOS Tableview - PullRequest
4 голосов
/ 15 июля 2010

Как создать несколько столбцов в строке представления таблицы?

Ответы [ 3 ]

6 голосов
/ 15 июля 2010

UITableView на самом деле не предназначен для нескольких столбцов.Но вы можете имитировать столбцы, создав собственный класс UITableCell.Создайте свою собственную ячейку в Интерфейсном Разработчике, добавляя элементы для каждого столбца.Дайте каждому элементу тег, чтобы вы могли ссылаться на него в вашем контроллере.

Дайте вашему контроллеру выход для загрузки ячейки с вашего пера:

@property(nonatomic,retain)IBOutlet UITableViewCell *myCell;

Затем в методе делегата табличного представления cellForRowAtIndexPath присвойте эти значениятег.

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
  static NSString *cellIdentifier = @"MyCell";

  UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellIdentifier];
  if (cell == nil) {
    // load cell from nib to controller's IBOutlet
    [[NSBundle mainBundle] loadNibNamed:@"MyTableCellView" owner:self options:nil];
    // assign IBOutlet to cell
    cell = myCell;
    self.myCell = nil;
  }

  id modelObject = [myModel objectAtIndex:[indexPath.row]];

  UILabel *label;
  label = (UILabel *)[cell viewWithTag:1];
  label.text = [modelObject firstField];

  label = (UILabel *)[cell viewWithTag:2];
  label.text = [modelObject secondField];

  label = (UILabel *)[cell viewWithTag:3];
  label.text = [modelObject thirdField];

  return cell;
}
0 голосов
/ 06 марта 2012

Я создал UIGridView , в котором один UITableViewCell содержит более одной ячейки. Вы можете узнать исходный код UIGridView .

Мой совет не кодировать его в вашем UIViewController. Построить внешний элемент управления и использовать его в UIViewController - гораздо лучший способ.

Или вы можете просто использовать мой:)

0 голосов
/ 15 июля 2010

Вы можете использовать несколько UITableViews бок о бок.Это должно выглядеть нормально с пользовательскими ячейками.Таким образом, вы можете преобразовать его, пока он не станет похож на DataGrid.; -)

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