相关疑难解决方法(0)

在swift中为for循环添加延迟

我有一个编码'问题'.

我有一个标签,我希望每2秒动态更改一次文本.我做了以下事情:

// WELCOME STRING ARRAY
let welcomeContainer:[String] = ["Welcome","Benvenuti","Bienvenue","Willkommen","üdvözlet","Dobrodošli","????? ??????????","Witajcie","Bienvenido","??????? ???????","Vitajte","????"]
Run Code Online (Sandbox Code Playgroud)

然后,timerwithinterval我尝试使用delay我的函数内部for循环中的方法,而不是使用(这对于这个简单的任务来说似乎太多了):

func welcomeLabelChange() {
for i in 0..<welcomeContainer.count {
    welcomeLabel.text = welcomeContainer[i]
    delay(delay: 2.0, closure: {})
}
Run Code Online (Sandbox Code Playgroud)

不幸的是,它完全跳过延迟... for循环立即执行,只显示数组中的最后一个文本.我究竟做错了什么?

我找到了这个OBJ-C的答案,但它暗示了一个(旧的)NSTimer实现.

for-loop delay nstimer ios swift3

5
推荐指数
3
解决办法
9820
查看次数

使用循环按顺序显示图像

我有一张带有5张照片的NSArray.我想在循环中一个接一个地显示它们.我的代码:

 NSArray *tabImage = [[NSArray alloc] init];

tabImage = [[NSArray arrayWithObjects:  
               [UIImage imageNamed:@"picto_1.png"],
               [UIImage imageNamed:@"picto_2.png"],
               [UIImage imageNamed:@"picto_3.png"],
               [UIImage imageNamed:@"picto_4.png"],
               [UIImage imageNamed:@"picto_5.png"],
               nil] retain];

int var = 0;
var = indexPath.row;

for (int var = 0; var < 20; var++) {
    pictoImage.image = [tabImage objectAtIndex:(var % 5)];
}
Run Code Online (Sandbox Code Playgroud)

我一直都有同样的照片.

感谢帮助.

cocoa-touch objective-c uiimage ios

3
推荐指数
1
解决办法
2978
查看次数

标签 统计

ios ×2

cocoa-touch ×1

delay ×1

for-loop ×1

nstimer ×1

objective-c ×1

swift3 ×1

uiimage ×1