UIWebView IBOutlet连接问题

时间:2013-11-15 06:46:22

标签: ios objective-c xcode uiviewcontroller uiwebview

所以我会尽力解释我的问题。

我在故事板上有2个视图控制器。一个是“主要”VC,第二个是“EULA”VC。

主视图控制器有一个UIWebView,它可以加载主UI并且工作正常。该控制器使用代码对在接口构建器中创建的EULA VC执行模态segue。这也很好。

现在这就是我的问题。 EULA视图控制器上还有一个UIWebView,但我似乎无法通过CTRL +拖动将此视图控制器连接到任何连接。 “main”UIWebView连接到ViewController.h

这是我用CTRL +拖动创建连接的方法: UIWebView Connection


我的问题是为什么我能够在主视图控制器上连接第一个UIWebView,而不是在EULA视图控制器上连接其他UIWebView?我错过了什么?

3 个答案:

答案 0 :(得分:2)

您是否已将EULAViewController.h设置为“界面”构建器中ViewController的自定义类?在Interface Builder中选择UIViewContoller,在第三个选项卡中确保该类正确。这是一个截图,解释我在说什么:

CustomClass in IB

还要确保在右侧窗格中选择了正确的文件,两个红色框都应显示自定义UIViewController子类的名称:

Right Pane

答案 1 :(得分:1)

我认为这是XCode中的一个错误或者是什么。但这是非常罕见的问题。我有时也遇到过这个问题。所以发布一个可以让你不太紧张的解决方案。但它有时对我有用。你可以尝试一下 。 -

只需在项目中创建一个新的UIViewController子类,并将其命名为与第一个略有不同的东西。然后,将旧的非工作UIViewController中的所有代码复制/粘贴到新的UIViewController子类(.h和.m)中,并根据新的UIViewController子类名称更改所有相关符号。在这样做之后,我发现在尝试控制拖动按钮的布线方面,一切正常。

快乐的编码。 :)

答案 2 :(得分:0)

重新创建类文件,将视图重命名为其他内容,然后返回EULAViewController,按照这些步骤,我能够解决问题。

  1. 关闭您正在处理的项目。
  2. 删除项目的【DerivedData】文件夹。 (此文件夹可能 在项目的文件夹内或内部 〜/ Library / Developer / XCode / DerivedData /(您的项目)/)或某处 其他是由你设定的。
  3. 重启项目。