2011-06-08 129 views
4

我想在现有的UILabel中显示一条简短的警告消息,然后让它在一分钟左右后自动消失,而不必暂停应用程序(如在循环中或类似)。显示文本,然后让它在一分钟后消失

什么是最好的方法?

+0

不够熟悉,无法发布代码或给出一个自信的答案,但我怀疑你可以用Core Animation做点什么。我正在考虑设置文本,使其可见(透明),然后设置一段动画,以便在一段时间后变为不可见。如果这符合你的需求,你甚至可以做一些像淡入淡出或滑入和滑出视图的东西。 – mbmcavoy 2011-06-08 19:57:06

回答

4

使用一个NSTimer:

NSTimer* timer = [NSTimer scheduledTimerWithTimeInterval:60 target:self selector:@selector(hideLabel) userInfo:nil repeats:NO]; 

并有一个方法hideLabel隐藏标签,[myLabel setHidden:YES];或类似的东西。

+0

神话般的。正是我想要的。谢谢! – TrekOnTV2017 2011-06-08 20:15:36

-1

使用UIAlertView(无按钮)弹出一些有趣的东西。

UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"Title" 
      message:@"" 
      delegate:self 
      cancelButtonTitle:@"" 
      otherButtonTitles:nil]; 
[alertView show]; 
[alertView release]; 

的(比如2秒钟)后驳回alertView解雇它创建一个方法

[self performSelector:@selector(byeAlertView:) withObject:alertView afterDelay:2]; 

方法...

-(void)byeAlertView:(UIAlertView *)alertView{ 
[alertView dismissWithClickedButtonIndex:0 animated:YES]; 
} 
+1

这可能对某些地方有用,但我不认为它回答了这个问题。按照问题,这不会出现在现有的UILabel上。此外,虽然应用程序执行的任何处理都不会被阻止,但UIAlertView是模态的,并且会阻止用户对应用程序执行任何操作,直到它消失。我怀疑他希望以一种不太干扰的方式告知用户一个事件,但不会妨碍他们。 – mbmcavoy 2011-06-08 20:01:56

+0

谢谢你的答案,但我尽量避免弹出窗口。我发现一个UILabel很让人ob目,但仍然非常有用。 – TrekOnTV2017 2011-06-08 20:17:25

+0

FML。我忘了UILabel – Legolas 2011-06-08 20:33:52

1

我自己写了这个。这很简单,这可能是你正在寻找的。 弹出顶部或底部的任何UIView实例,然后几秒钟后消失。

https://github.com/SaKKo/SKTipAlertView

希望你觉得它有用。 欢呼声,

+0

很酷。看起来很有用。谢谢。 – TrekOnTV2017 2013-04-22 15:34:54

相关问题