是否可以将UIView显示为UITableViewCell?

时间:2013-11-22 11:07:09

标签: ios objective-c uiview uitableview

我们如何将UIView显示为UITableViewCell?是否有可能做到这一点? 请注意,我想显示UIView AS A CELL,而不是在点击时打开UI视图,就像这个post或其他帖子中提到的那样 - 因此我认为这不是重复的,因为在大多数讨论中,他们试图在点击UITableViewCell时显示UIView。

我之所以想要这个,是因为我正在以Accordion风格实现我的应用程序。因此,所需的功能是,一旦单击该部分,该行显示UIView(我指的是indexPath部分和行)。我已经将手风琴风格与预定义的样式单元格(仅标签)配合使用。但我坚持这个案子。我的意思是手风琴+ uiview单元格样式:picture(而不是地图,我想显示我的uiview,其中包含按钮,图像,标签等)。

我试图在我的cellForRowAtIndexPath中执行此操作:

  if (indexPath.section == 0)
  {
        if (indexPath.row == 1) // for row 1 of section 0
        {
           // yourView is my custom UIViewController
           [cell.contentView addSubview:(yourView.view)];
           [cell.contentView bringSubviewToFront:(yourView.view)];
         }
  }

也许我错过了什么? 我是iOS编程的新手,所以任何帮助都非常感谢。谢谢。

2 个答案:

答案 0 :(得分:0)

您可以通过以下步骤实现此目的 -

(1)首先当你的UITableView显示时,为numberOfRowsInSection返回0,如 -

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
    return 0;
}

(2)之后当你点击你的部分返回numberOfRowsInSection中的细胞计数(你想要的)并重新加载你的UITableView。

(3)将您的视图配置为单元格中的子视图。 (4)如果要隐藏单元格中的视图,请再次按照步骤(1)和(2)进行操作。

希望这对你有所帮助。

答案 1 :(得分:0)

您必须创建可扩展和折叠tableviewcell

使用以下链接:

https://developer.apple.com/library/ios/samplecode/TableViewUpdates/Introduction/Intro.html