gpt4 book ai didi

ios - 创建随机生成的水平飞行标签

转载 作者:行者123 更新时间:2023-11-29 02:08:10 26 4
gpt4 key购买 nike

我想向我的应用程序添加一项功能,该功能涉及在 View 中水平飞行的具有不同关键字的标签。理想情况下,我希望通过一组单词来完成此操作,这些单词被随机选择以不同的速度飞过屏幕并在屏幕上的 3-4 个不同位置(垂直)。

我一直在做一些研究,也许我正在寻找错误的东西,但我找不到太多建议来了解我应该从哪里开始。我只能找到如何将 Sprite 移动到 View 的随机区域。

我想展示更多内容,但不幸的是,到目前为止我仅有的代码如下:

func generateWords() {
let keyWordArray = ["Word 1", "Word 2", "Word 3", "Word 4", "Word 5"]

for _ in 1...5 {
let randomIndexWords = Int(arc4random_uniform(UInt32(keyWordArray.count)))
}
}

如何在不同的垂直位置随机生成多个标签,这些标签以不同的速度飞过屏幕然后消失?这需要无限地发生,直到用户关闭 View 。

谢谢!

最佳答案

首先要获取屏幕高度:

    CGFloat height;
height = [[UIScreen mainScreen] bounds].size.height;

然后您可以自己决定垂直位置,即如果您有十个标签,将高度除以十,然后向上递增。要为标签设置动画,您需要将框架放在屏幕的一侧,然后将其放在另一侧。您可以为 UIView 设置动画,在此示例中,初始标签框架是 (someXOffTheScreenOnTheRight, someY, widthOfLabel, HeightOfLabel):

[UIView animateWithDuration:0.8 delay:0 options:0 animations:^{
[self.view addSubview:label];

label.frame=CGRectMake(-10, someY, widthOfLabel, heightOfLabel);



} completion:^(BOOL finished){
[label removeFromSuperview];

}];

这将使标签从右到左动画化。您可以通过更改持续时间来调整速度。

当然,如果您想使用随机 Y 坐标,请使用 arc4random 方法。

这应该足以让你继续......

关于ios - 创建随机生成的水平飞行标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29566939/

26 4 0