我正在用xcode为iO编写应用程序。我有这样的代码:

- (void)buttonAction:(UIButton*)sender{

    UIView *figure = (UIView *) [figures objectAtIndex:sender.tag];

    [figure.layer setBorderWidth:2.0f];
    [figure.layer setBorderColor: [UIColor greenColor].CGColor];
    sleep(1);
    [self cleanScreen];

}

- (void) cleanScreen {

    //Some code to hide all view objects

}


我希望更改边框的颜色和宽度能在屏幕上反映1秒钟,然后再通过cleanScreen函数删除这些项目。但是,碰巧这些更改没有得到反映,并且删除了花费一秒钟的元素。

我想在调用cleanScreen之前刷新屏幕。

如何获得我想要的效果?

提前致谢!

最佳答案

代替:

sleep(1);


采用:

[self performSelector:@selector(cleanScreen) withObject:nil afterDelay:1];


使用sleep()冻结整个应用程序

关于iphone - 用户交互后刷新屏幕,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13827500/

10-09 21:26