我需要UIAlertView
的帮助:-)。目前,当用户使用UIAlertView
功能摇动设备时,我会显示-(void)motionEnded:
。我希望使用NSTimer
使警报视图在0.5秒后消失,因此我不需要警报视图底部的任何按钮来关闭它。有没有办法在没有任何按钮的情况下创建UIAlertView? [使用下图中箭头移除空间的方法?]
以下是代码:
- (void)motionEnded:(UIEventSubtype)motion withEvent:(UIEvent *)event
{
resetAlert = [[UIAlertView alloc] initWithTitle:@"Reset!"
message:nil
delegate:nil
cancelButtonTitle:nil
otherButtonTitles:nil, nil];
[resetAlert show];
alertHideTimer = [NSTimer scheduledTimerWithTimeInterval:10.5 target:self selector:@selector(dismissWithClickedButtonIndex:animated:) userInfo:nil repeats:NO];
self.label.text = @"0";
numero = 0;
[self.label2 setHidden:YES];
}
答案 0 :(得分:1)
是的。请尝试以下操作:iToast
答案 1 :(得分:1)
您可以创建自己的视图。根据您的要求,计时器等显示和隐藏/关闭它。
答案 2 :(得分:1)
我不确定具有多参数选择器的NSTimer
是否正确。我添加了这个方法:
-(void)dismissAlertView:(UIAlertView*)alertView {
[alertView dismissWithClickedButtonIndex:0 animated:NO];
}
并将您的NSTimer
替换为:
[self performSelector:@selector(dismissAlertView:) withObject:resetAlert afterDelay:0.5];
答案 3 :(得分:1)
据我所知,完全删除空间是不可能的。
然而......这里有一些你可能想尝试的事情;
添加一些换行符以获得顶部填充:initWithTitle:@"\n\nConfiguring Preferences...
Top Padding Example http://iosdevelopertips.com/wp-content/uploads/2010/02/alert2-204x300.png
将UIActivityIndicatorView添加到UIAlertView
alert = [[UIAlertView alloc] initWithTitle:@"Configuring Preferences\nPlease Wait..." message:nil delegate:self cancelButtonTitle:nil otherButtonTitles:nil];
[alert show];
UIActivityIndicatorView *indicator = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhiteLarge];
调整指示器,使其距离警报底部几个像素
indicator.center = CGPointMake(alert.bounds.size.width / 2, alert.bounds.size.height - 50);
[indicator startAnimating];
[alert addSubview:indicator];
Indicator Example http://iosdevelopertips.com/wp-content/uploads/2010/02/alert3-204x300.png
希望有所帮助。
答案 4 :(得分:0)
您可以在5秒后调用委托方法隐藏警报
[alert dismissWithClickedButtonIndex:0 animated:YES];