ios4.x 和5.x 之api变化笔记
今天在做一个通讯录的时候,弹入和弹出一个通讯录的时候在一部iphone上正常,但在另一部iphone上崩溃了,两部查一下发现部iphone的ios版本不同,一个4.3 ,一个5.0。经过查找发现是用了ios5.0以上的api了。
在ios5.0之后,dismissModalViewControllerAnimated方法被 dismissViewControllerAnimated:completion:方法所取代.后者比前者多了一个(void (^)(void))completion参数,这个参数是一个block用来提供UIViewcontroller对象被释放之后运行的回调.这个block的回调方法是在UIViewcontroller的viewDidDisappear:
之后被调用.
与以上的两个方法对应的方法是presentModalViewController:animated:和presentViewController:animated:completion:
(该段引用至 http://blog.csdn.net/terrylee_cold/article/details/7529132 )
if([self.delegate respondsToSelector:@selector(dismissViewControllerAnimated:completion:)])
{
[self.delegatedismissViewControllerAnimated:YEScompletion:NULL];
}
else
{
[self.delegatedismissModalViewControllerAnimated:YES];
}