1

我试图在表格单元格中创建一个表格,以呈现与应用商店类似的水平表格单元格幻灯片。

如果您进入应用商店并单击特色产品选项卡,您将明白我的意思。

嵌套的水平滑台。

我已经从互联网上下载了一个运行良好的软件,但它似乎使用了笔尖。我正在寻找使用情节提要功能创建一个。我的理由是我发现它很容易使用,尤其是在做segues等时

到目前为止,我已经完成了一个,但我似乎无法调整单元格的大小以正确适应(即单元格宽度是旋转表的高度)

这是我从下载的源代码中复制的一些代码

桌子

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

   if (cell == nil) {

       CGAffineTransform rotateTable = CGAffineTransformMakeRotation(-M_PI_2);
       tableViewCell.horizontalTableView.transform = rotateTable;
       tableViewCell.horizontalTableView.frame = CGRectMake(0, 0, tableViewCell.horizontalTableView.frame.size.width, tableViewCell.horizontalTableView.frame.size.height);

      tableViewCell.contentArray = [arrays objectAtIndex:indexPath.section];

      tableViewCell.horizontalTableView.allowsSelection = YES;
      //cell = tableViewCell.horizontalTableView;

     }

    return cell;
} 

表格单元格

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
   static NSString *CellIdentifier = @"Cell";
   UITableViewCell *cell = [self.horizontalTableView dequeueReusableCellWithIdentifier:CellIdentifier];
   if (cell == nil) {
    cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier] ;
   }

   for (UIImageView *view in cell.subviews) {
       [view removeFromSuperview];
   }

   CGAffineTransform rotateTable = CGAffineTransformMakeRotation(-M_PI_2);
   horizontalTableView.transform = rotateTable;
   horizontalTableView.frame = CGRectMake(0, 0, horizontalTableView.frame.size.width, horizontalTableView.frame.size.height);

   tableViewCell.contentArray = [arrays objectAtIndex:indexPath.section];

   horizontalTableView.allowsSelection = YES;

   UIImageView *imageView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 30, 30)];
   imageView.image = [contentArray objectAtIndex:indexPath.row]];
   imageView.contentMode = UIViewContentModeCenter;

   CGAffineTransform rotateImage = CGAffineTransformMakeRotation(M_PI_2);
   imageView.transform = rotateImage;

   [cell addSubview:imageView];

   return cell;
}

请允许我解释发生的问题: - cell==nil 不起作用,因为 cell 似乎不是 nil;- cell = tableViewCell.horizo​​ntalTableView 被注释掉,因为我总是得到 UITableView dataSource must return a cell from tableView:cellForRowAtIndexPath 错误 - 单元格旋转似乎工作,因为我在表格单元格部分有它,但这似乎是问题所在我无法调整它的大小

如果有人可以帮助我编写代码或将我指向一个具有工作故事板嵌套水平表的站点,将不胜感激。

(请记住,我还没有被称为应用程序开发的专业人士,但我正在努力实现这一目标)

4

0 回答 0