如何在自定义 UITableViewCell XIB 中处理两个视图



我有一个UIView在XIB的UITableViewCell中布局。

按下按钮后,此视图应转换为另一个视图(不重要)。

关键是,我必须以某种方式使用第二个视图进行转换(使用相同的数据源),并在转换后交换这些视图。

我应该创建- UIView 在同一个 XIB 内,- 同一XIB内的第二个UITableViewCell,- UIView 在另一个 XIB 内- UITableViewCell 在另一个 XIB 中?

或者也许别的什么?

可以使用此方法进行转换:

[UIView transitionWithView:containerView
       duration:0.2
       options:UIViewAnimationOptionTransitionFlipFromLeft
       animations:^{ [fromView removeFromSuperview]; [containerView addSubview:toView]; }
       completion:NULL];

在这个例子中(直接来自苹果文档),containerView将是你的UITableViewCell,fromView将是它的子视图。 toView 将是替换它的视图。

关于视图的排列 insibe de xib,我会将它们全部填充在同一个 xib 中,fromView 作为表视图单元格的子视图,而 toView 没有超级视图,但通过插座连接到表视图单元格(或文件所有者)。

谢谢大家的帮助。这比我想象的要容易

我已经通过放入 XIB 解决了这个问题:

  • UITableViewCell (上)
  • UIView

然后将所有内容连接到我的自定义UITableViewCell类。

的主要问题是将两个视图与相同的数据同步,我只需在UITableViewController中复制我需要的任何内容即可实现。

您只需要记住,所有连接都应该在 outlet 和 UITableViewCell 和>>NOT<<文件的所有者之间 - 这在 XIB 加载期间以某种方式使应用程序崩溃。

最新更新