2014-02-20 4 views
-1

웹 사이트 (JSON 사용)에서 정보를 가져와 CoreData에 정보를 저장하는 collectionview가있는 iOS 앱을 만들려고합니다.Coredata + CollectionView

저는 CoreData에 2 개의 엔티티가 있습니다. 1 호출 된 영역 (컬렉션 헤더 텍스트가 됨). 1 호출 된 배포자 (컬렉션 셀이 됨). https://github.com/AshFurrow/UICollectionViewExample

나는 모든게과 작품을 설정하지만 난으로 나눔 여러 번 여전히 콜렉션 뷰 스크롤을 회전 할 때 때때로, 나는이 오류를 참조하십시오 :

내가 본이 예제를 CollectionView + CoreData를 사용하려면
*** Terminating app due to uncaught exception 'NSRangeException', reason: 'NSMutableRLEArray objectAtIndex:effectiveRange:: Out of bounds' 
*** First throw call stack: 
(
    0 CoreFoundation      0x01a9f5e4 __exceptionPreprocess + 180 
    1 libobjc.A.dylib      0x015738b6 objc_exception_throw + 44 
    2 CoreFoundation      0x01a9f3bb +[NSException raise:format:] + 139 
    3 Foundation       0x011a5f62 -[NSRLEArray objectAtIndex:effectiveRange:] + 131 
    4 Foundation       0x011a7b86 -[NSConcreteMutableAttributedString addAttribute:value:range:] + 212 
    5 UIFoundation      0x034aab82 __50-[NSConcreteTextStorage addAttribute:value:range:]_block_invoke + 156 
    6 UIFoundation      0x034aaa65 -[NSConcreteTextStorage addAttribute:value:range:] + 127 
    7 DataDetectorsUI      0x0a7da85c -[DDTextKitOperation _addResultsToAttributes] + 374 
    8 DataDetectorsUI      0x0a7daa82 __46-[DDTextKitOperation doURLificationOnDocument]_block_invoke_2 + 39 
    9 UIFoundation      0x034a9190 -[NSTextStorage(ActorSupport) coordinateAccess:] + 48 
    10 DataDetectorsUI      0x0a7daa54 __46-[DDTextKitOperation doURLificationOnDocument]_block_invoke + 134 
    11 libdispatch.dylib     0x0222d440 _dispatch_barrier_sync_f_slow_invoke + 71 
    12 libdispatch.dylib     0x0223e4b0 _dispatch_client_callout + 14 
    13 libdispatch.dylib     0x0222c75e _dispatch_main_queue_callback_4CF + 340 
    14 CoreFoundation      0x01b04a5e __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 14 
    15 CoreFoundation      0x01a456bb __CFRunLoopRun + 1963 
    16 CoreFoundation      0x01a44ac3 CFRunLoopRunSpecific + 467 
    17 CoreFoundation      0x01a448db CFRunLoopRunInMode + 123 
    18 GraphicsServices     0x03d569e2 GSEventRunModal + 192 
    19 GraphicsServices     0x03d56809 GSEventRun + 104 
    20 UIKit        0x002e1d3b UIApplicationMain + 1225 
    21 CollectionTest      0x0000934d main + 141 
    22 libdyld.dylib      0x024ce725 start + 0 
) 
libc++abi.dylib: terminating with uncaught exception of type NSException 
(lldb) 
내가 그것을 실행하고 오류를 확인 할 준비 모든게와 데모 응용 프로그램을 만들었습니다

, 당신은 여기에서 다운로드 할 수 있습니다 : 사람이 공동으로 알고있는 경우 https://www.dropbox.com/s/cg86896ld6240r5/CollectionTest.zip

내가 어떤 도움을 부탁드립니다 uld가 문제가됩니다.

미리 감사드립니다.

답변

0

핵심 데이터를 올바르게 사용하고 있지 않습니다. 엔티티는 서로 관계가 없습니다. 대신, 당신은 어떤 종류의 외래 키에 의존합니다. 이는 핵심 데이터와 같은 객체 그래프에는 적합하지 않으며 발생하는 오류를 비롯하여 모든 종류의 예측할 수없는 오류가 발생할 수 있습니다.

코어 데이터 모델의 작동 방식에 대해 알아보십시오. 핵심 데이터 프로그래밍 안내서의 Relationships and Fetched Properties 장에 특히주의하십시오.

+0

안녕하세요. 링크를 제공해 주셔서 감사합니다. 나는 관계가 컬렉션 뷰로 인한 문제인지 여부는 Distributors 엔터티의 개체 만 가져오고 Regions 엔터티는 주석 처리되며 코드에 표시된 이름을 하드 코드합니다. 나는 그 문제가 될 수 없다고 생각한다. – Miguel

+0

이것은 핵심 데이터 문제는 아니지만 링크 및 기타 데이터를 감지하려고 시도하는 레이블 및 텍스트보기에 문제가 있습니다. –

+0

알아두면 좋을 것. 그 질문에서 분명하지 않았다. 감사. – Mundi

2

나는 CoreData와 관련이 없다고 생각합니다. doURLificationOnDocument와 관련된 iOS 7의 버그와 관련이 있다고 생각합니다. 우리는 핵심 데이터를 전혀 사용하지 않는 동일한 문제를 앱에서 실행하고 있습니다. 이 스택 오버플로 링크 (iOS 7 UITextView link detection crash in UITableView)를 보면 다른 사람이 같은 문제에 대해 불평하고 있음을 알 수 있습니다.

+0

좋은 해결책을 발견하고 위의 스레드에 대한 답을 추가했습니다. http://stackoverflow.com/a/25718283/1567221 –