gpt4 book ai didi

iphone - 在父类(super class)数组中初始化 UIViewController 子类?

转载 作者:行者123 更新时间:2023-11-28 22:57:00 24 4
gpt4 key购买 nike

这是我的设置。我将 UIViewController 子类化一次,以创建一个“Widget” View Controller 来处理我所有的小部件可以执行的所有操作。然后我为我的每个小部件子类化了小部件 View Controller ,因为它们各自处理自己独特且通常很复杂的一组功能。

我想创建一个小部件数组来存储我场景中的每个事件小部件,但是我在尝试弄清楚如何初始化适当的小部件以存储在数组中时遇到了麻烦。最初我想我可以只做 [widgets addObject:[[Widget alloc] initWithNibName:widgetName bundle:nil]];,但是这完全忽略了单个 widget initWithNibName 函数并直接转到抽象的 Widget 类(这是有道理的,因为那是我要加载它的类......)。

如何让我的类正确加载到这个数组中,每个小部件都由其自己的唯一子类初始化?如有必要,请随时推荐结构更改。

最佳答案

如果类名与nib相同

NSArray* widgets = [NSArray arrayWithObjects: @"MyVC1",@"MyVC2",nil];

NSString* newVC = [widgets objectAtIndex: value];

Class classVC = NSClassFromString(newVC);

Widget* controller = [[classVC alloc] initWithNibName:newVC bundle:nil];

关于iphone - 在父类(super class)数组中初始化 UIViewController 子类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10584038/

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