1.
-(void)animationFinished:(NSString*)animationid finished:(NSNumber*)finished context:(void*)context { if ([animationid compare:@"exitApplication"]==0) { exit(0);// 退出应用程序 NSLog(@"stop"); } } -(IBAction)exit:(id)sender { [UIViewbeginAnimations:@"exitApplication"context:nil]; //动画名称 [UIViewsetAnimationDuration:6]; [UIViewsetAnimationDelegate:self]; [UIViewsetAnimationTransition:UIViewAnimationCurveEaseInOutforView:self.viewcache:NO]; // 动画方式 //动画结束执行的操作 [UIVie setAnimationDidStopSelector:@selector(animationFinished:finished:context:)]; self.view.bounds=CGRectMake(0,0, 0, 0);//动画结束 [UIViewcommitAnimations]; }
2.
- (void)exitApplication { AppDelegate *app = [UIApplication sharedApplication].delegate; UIWindow *window = app.window; [UIView animateWithDuration:1.0f animations:^{ window.alpha = 0; window.frame = CGRectMake(0, window.bounds.size.width, 0, 0); } completion:^(BOOL finished) { exit(0); }]; }
3.
Q:怎样用代码方式退出IOS程序 A:没有提供用于正常退出IOS应用的API。 在IOS中,用户点击Home键来关闭应用。你的应用应该符合以下条件:它不能自行调用方法,而应采取措施与用户交互,表明问题的性质和应用可能会采取的行为,比如打开WIFI,使用定位服务等供用户选择确定使用; 警告:不要使用exit函数,调用exit会让用户感觉程序崩溃了,不会有按Home键返回时的平滑过渡和动画效果;另外,使用exit可能会丢失数据,因为调用exit并不会调用-applicationWillTerminate:方法和UIApplicationDelegate方法; 如果在开发或者测试中确实需要强行终止程序时,推荐使用abort 函数和assert宏;