想要创建一个很酷的静态UI,但是:“静态表视图只有效......”

时间:2012-02-14 13:13:33

标签: ios uitableview static storyboard cell

所以我正在创建一个类似的视图:

enter image description here

为此,我试图使用一个故事板,我添加2个TableViews(均为“静态单元格”),然后我直接从故事板手动添加我的Cell内容......

在我的故事板中,它看起来很棒但是当我构建时,我得到:

  

en.lproj / MainStoryboard.storyboard:错误:非法配置:   静态表视图仅在嵌入时有效   UITableViewController实例

如果你们对这个问题有任何想法。

谢谢!

4 个答案:

答案 0 :(得分:34)

我在更改现有的自定义视图控制器时遇到了一个问题,使其扩展了UITableViewController。 XCode不够智能,也不会意识到它已经符合要求。

您可以通过编辑情节提要源代码并将<viewController ...更改为<tableViewController...来解决此问题。

原始来源:https://plus.google.com/108665969482300807329/posts/J4mCASMA3pZ

答案 1 :(得分:22)

在视图中添加UITableViewController。它应该持有UITableView。将其定义为静态表视图,并将其分组。添加两个部分。一个有一行,另一个有两行。再次将标签按钮和滑块添加到行中。

我不知道你为什么要在这里有两个UITableView?

答案 2 :(得分:4)

在Xcode 6中实现此功能的唯一方法,以及Apple打算如何工作的方法是在容器视图中嵌入TableViewController,如果必须的话。看来你不能像juanignaciosl在Xcode 6中那样破解你的方式。

所以步骤如下:

  1. 创建表格视图控制器
  2. 将此控制器中的表视图替换为“有问题”视图控制器中的表及其所有静态单元格等等
  3. 如果您的表视图是更复杂的ui的一部分,并且它不是视图控制器的主视图,请继续如下

    1. 在“有问题”的视图控制器中创建一个containerView,与您现在移动的静态表视图位于相同的位置。这也将自动创建另一个viewcontroller和seque - 删除那些。
    2. 左键单击拖动或按住Ctrl键从容器视图拖动到包含静态表的tableviewcontroller并选择embed
    3. 这不像以前那么好,因为您的tableview在界面构建器中的单独视图控制器中被剥离,这可能会对您现有的代码和出口产生影响。但对于大型静态表,它是动态生成所有内容的更好选择。

答案 3 :(得分:2)

您可以将其设置为动态,然后切换滚动:

[yourTableName setScrollEnabled:NO];