【发布时间】:2014-07-10 22:53:52
【问题描述】:
在我的一个视图控制器中,我有以下结构:
+-View
+-Scroll View 1
+-UIView
+-Scroll View 2
...我将三个子视图添加到 Scroll View 2 中,其中一个包含一系列 UITextViews 和 UILabels 作为类似表单的结构。
我看到的问题是,当我尝试从视图控制器级别访问引用这些控件的属性时,它们将为零。但是,如果我在包含 UITextFields 和 UILabels 的 UIView 内的 awakeFromNib 中设置断点,则属性是有效的......这几乎就像引用消失了一样。
我可以清楚地看到它们存在,如果我在设置断点后在调试控制台中执行以下操作,我肯定会得到视图图输出到控制台:
po [self.profileEditView recursiveDescription]
这听起来对任何人来说都很熟悉吗?如果是,我该如何补救?
我正在考虑做的一件事就是不尝试直接访问这些属性,因为目标是让视图控制器成为那些 UITextView 控件的代表,以便它可以通过调整 Scroll 来响应成为第一响应者每个文本视图获得焦点时视图 1 的位置。这只是更麻烦,但如果这是我必须做的,我会走那条路。
我以前从未见过这种情况,所以我觉得这很奇怪。这个视图控制器肯定发生了很多事情。
其他细节:
- 视图控制器在 Storyboard 中定义。
- 在运行时添加的 UIView 子视图具有我以编程方式加载的 XIB。
【问题讨论】:
-
您尝试访问
IBOutlet的属性是否已注释,它们是否已连接到 xib 中? -
您尝试通过什么方法访问它们?
标签: ios objective-c cocoa-touch uiview uiviewcontroller