暂时远离 XCode 编程,现在我要重新开始,感觉我要重新开始了。我有一个简单的例子让我发疯。我创建了一个名为 Word1View 的 UIView 子类并将其添加到我的故事板中。我将它声明为主视图控制器中的属性,并将其作为 IBOutlet 附加到主视图。我可以使用 Core Graphics 毫无问题地在此视图上绘制(矩形、线条等)。这是“.h”文件中的代码。该属性在“.m”中正确合成
#import <UIKit/UIKit.h>
#import "Word1View.h"
@interface Board3ViewController : UIViewController
{
Word1View *word1View;
}
@property (nonatomic, strong) IBOutlet Word1View *word1View;
@end
现在,问题来了。我在 Word1View.h 中添加了一个 UILabel(稍后我将添加 UIImageFiles),它看起来像这样:
#import <UIKit/UIKit.h>
@interface Word1View : UIView
{
UILabel *testLabel;
}
@property (nonatomic, retain) UILabel *testLabel;
@end
该属性也被正确合成。UILabel 被添加到主故事板的视图中。我试图使它成为一个 IBOutlet,但只要它是子视图的一部分,就无法将它连接起来。我试图在我的主视图控制器中访问 UILabel,如下所示:
[super viewDidLoad];
[self.view addSubview:word1View];
NSLog(@"Label text is: %@", word1View.testLabel.text);
我没有任何访问该标签的权限,正如 NSLog 的输出所证明的那样:Board3[14520:c07] 标签文本是:(null)
我希望能够从我的主视图控制器访问标签(更改其文本、属性等)。
任何帮助是极大的赞赏。谢谢你。