gpt4 book ai didi

iphone - 如何跨多个 View Controller 处理通用 xib 或控件?

转载 作者:行者123 更新时间:2023-12-01 19:27:55 25 4
gpt4 key购买 nike

我有一个动画角色与 xib 中的其他常规控件共存。
一切正常。那里没有问题。动画是通过 UIImageView 图像翻转完成的。由计时器触发的动画引擎(状态机)运行该节目。角色使用六个 UIImageView 来渲染角色需要动画的不同部分。

现在,我正在研究通过添加更多 UIViewController(及其 xib)使应用程序变得更加复杂的可能性。正如您可能已经猜到的那样,我的角色必须存在于任何滑动到前一个之上的 xib 中。

实现这一点的最佳方法可能是什么?我想我可以复制粘贴 UIImageView 并为每个新的 xib 实例化一个新的动画引擎(或传递一个指针)。

我在很多方面需要一个新的 xib 只覆盖以前 xib 的 2/3 并且可以做到这一点,但我不确定这是否有效。不确定事件以及它们如何与两个重叠的 xib 一起工作(如果可能的话)。

当我进行实验时,我想我会问一下,看看以前来过这里的人是否有一个或两个有趣的方法可以分享。

最佳答案

您的问题似乎是关于所有权而不是动画。尝试将字符隔离到它自己的 xib 中(比如 Character.xib)并创建一个 CharacterLoader 类。 CharacterLoader 类将具有字符属性,类似于:

CharacterLoader.h

@interface CharacterLoader : NSObject {
}

@property(nonatomic, retain) IBOutlet Character *character;

+ (Character *)loadCharacter;

@end

CharacterLoader.m
...

+ (Character *)loadCharacter {
CharacterLoader *loader = [[CharacterLoader alloc] init];
[[NSBundle mainBundle] loadNibNamed:@"Character" owner:loader options:nil];
Character *character = [loader.character autorelease];
[loader release];
return character;
}

...

如果你发现自己制作了很多这样的加载器类,你可以将它们组合成一个类,它的作用基本上是像这样以编程方式加载 nib。另一种选择是仅以编程方式创建角色和所有其他共享内容,但这对您来说可能并不理想,因为您有意使用 Nib 接近它。

关于iphone - 如何跨多个 View Controller 处理通用 xib 或控件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5616526/

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