gpt4 book ai didi

ios - 脚本动画 block iOS

转载 作者:行者123 更新时间:2023-12-02 15:43:10 25 4
gpt4 key购买 nike

我正在尝试制作一系列全屏图像的动画。每个图像将以不同的方式进行动画处理。我想将这些动画存储在数据库或 plist 或其他任何地方,我只是不想对它们进行硬编码。动画将非常简单,图像中的对象会抖动或弹跳或发生什么。我将使用 block 对对象进行动画处理,理想情况下我希望将各个 block 存储在数据存储中。我想避免使用单独的脚本语言或类似的语言。

我最好的行动方案是什么?

最佳答案

如果您想将它们存储在例如 plist 中,您可以执行以下操作:

<plist>
<array>
<dict>
<key>filename</key>
<string>first.jpg</string>
<key>animation</key>
<string>bounce</string>
<key>duration</key>
<real>0.5</real>
</dict>
<dict>
<key>filename</key>
<string>second.jpg</string>
<key>animation</key>
<string>easeinout</string>
<key>duration</key>
<real>1.0</real>
</dict>
<!-- et cetera -->
</array>
</plist>

然后您可以通过编写类似以下代码片段的内容将其解码为实际动画:

- (void)loadAnimations
{
NSArray *animations = [NSArray arrayWithContentsOfFile:@"/Users/H2CO3/animations.plist"];
for (NSDictionary *animation in animations)
{
UIImage *img = [UIImage imageNamed:[animation objectForKey:@"filename"]];
NSString *animationType = [animation objectForKey:@"animation"];
float duration = [(NSNumber *)[animation objectForKey:@"duration"] floatValue];

if ([animationType isEqualToString:@"bounce"])
{
/* animation block 1 */
}
else if ([animationType isEqualToString:@"easeinout"])
{
/* animation block 2 */
}
/* Et cetera... */
}
}

关于ios - 脚本动画 block iOS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10491451/

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