gpt4 book ai didi

objective-c - 在主视图中初始化时子类 UIView 未加载

转载 作者:行者123 更新时间:2023-11-29 04:44:46 26 4
gpt4 key购买 nike

我正在尝试在 UIButton 内创建一个小指示器。我已经放置了一个自定义 View ,并将界面生成器中的自定义类更改为我的类。然后,我创建了一个相同类型的 IBOutlet 并在界面生成器中将它们连接起来。

我的子类看起来像这样:

- (UIView *)initWithNumber:(NSInteger *)number
{
self = [super initWithFrame:CGRectMake(0, 0, 34, 17)];
if (self) {
[self setBackgroundColor:[UIColor blueColor]];

}
return self;
}

然后在主视图中我这样做:

self.indicatorControl = [indicatorControl alloc] initWithNumber:(NSNumber *)32];

但是它在 View 加载时没有初始化 View 并更改背景颜色?为什么这不会发生?如果我将 setBackgroundColor 方法调用放在 awakeFromNib 中,它会起作用,但我希望它在我调用初始化时初始化并返回我的 View 。看起来这应该可行。

最佳答案

如果您保留 IBOutlet,界面生成器将重新初始化您的按钮,覆盖您的代码内按钮创建。您想在代码或界面生成器中初始化按钮吗?

我建议:

代码:从界面生成器中取消链接按钮并将代码放入父 View Controller 的viewDidLoad中界面构建器:在界面构建器中将背景设置为蓝色或在awakeFromNib中执行初始化

关于objective-c - 在主视图中初始化时子类 UIView 未加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9813269/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com