2014-03-07 42 views
1

是否有一种标准方式在iOS应用程序中向用户显示短消息,然后自动消失。iOS7弹出窗口或通知持续几秒钟

我有一个应用程序,用户可以在其中进行更改。如果他/她保存了我想提供反馈的更改。但是如果一个AlertBox一直显示并且用户需要点击一个按钮,可能会很烦人。

回答

3

你有几个选项,你可以尝试。你想要的可能是:

创建一个UIView,你想提供反馈。这样,您可以完全按照您想要的方式创建它。

默认设置为隐藏。 yourView.alpha = 0.0f; =>如果您想在动画出现时进行动画处理,则需要该动画。如果不是,请使用yourView.hidden = true并忽略下面的所有动画,只需将其替换为yourView.hidden = false即可。

当你需要你的用户看到您的意见,您可以通过以下设置动画:右后

[UIView beginAnimations:@"fadeIn" context:nil]; 
[UIView setAnimationDuration:0.5]; // add the value you want 
yourView.alpha = 1.0f; 
[UIView commitAnimations]; 

,再后来却隐藏它,添加以下内容:

NSTimeInterval timeInterval = 1.0f; // how long your view will last before hiding 
[NSTimer scheduledTimerWithTimeInterval:timeInterval target:self selector:@selector(hideView) userInfo:nil repeats:NO]; 

最后,创建你的hideView方法,这将被你的计时器调用:

-(void) hideView { 
[UIView beginAnimations:@"fadeOut" context:nil]; 
    [UIView setAnimationDuration:0.5]; // add the value you want 
    yourView.alpha = 0.0f; 
    [UIView commitAnimations]; 
} 

也许有但是我认为这个方法可以解决这个问题,并且可以根据需要创建视图。动画技巧会为您的反馈增加一个很好的外观和感觉。希望有所帮助:)

+1

与添加/删除子视图相比,它看起来很不错。特别是如果在同一时间有多个通知。所以在这里我们可以轻松地将它与堆栈结合起来。 –

1

您可以创建一个自定义视图通过的UIView和使用的NSTimer来显示它在一定时间和删除视图

1

您可以显示[.... addSubview: yourView]自定义视图。

之后,你创建一个NSTimer,例如延迟1秒。 在定时器的选择器上,您可以执行一次计数,并在您的自定义视图上显示例如 ,视图将显示多长时间。 在选择器上,做一个if,然后在X秒后做

[youtView removeFromSuperview];

1

您可以使用定时计时器的自定义视图来显示一些信息,然后在计时器完成时隐藏它。

但是,如果您正在寻找一种Android风格的烤面包,显示弹出式信息并在特定时间后隐藏。然后,你可以考虑使用 Toast Control for iOS。这是最简单的控件之一(Atleast,我遇到过),用于实现简单的弹出窗口,而无需用户取消它。

+0

看起来像一个很好的框架,并且lizence也很解放 –