iOS 5에서 NSIndexPath 객체 사용 방법 변경

2011. 11. 22. 19:47아이폰 개발

이전까지 UITableView를 사용할 때, 잘 이용하고 있던 NSIndexPath 관련 코드에서 오류가 발생하여 확인을 해보니 사용 방법이 변경된 것을 알게 되었다. 역시나 그냥 넘어가지 않는군.

NSIndexPath 객체를 복사하거나  다른 NSIndexPath 객체와 비교하는 방법을 반드시 다음과 같이 사용해야 한다.

<iOS 4에서 사용하던 방법>
selectItemIndex = indexPath;

<iOS 5에서 사용해야 하는 방법>
selectItemIndex = (NSIndexPath*) [indexPath  copy];

<iOS 4에서 사용하던 방법>
if (selectItemIndex.row == indexPath.row)

<iOS 5에서 사용해야 하는 방법>
if ([selectItemIndex isEqual:indexPath])

본 사항에 대해서 다음 URL을 참고하도록 하자.
http://stackoverflow.com/questions/7766385/crashes-in-xcode-version-4-2-and-ios-5released-oct-12-2011-at-self-tableview