2014-02-20 35 views
-1

我想創建一個iOS應用程序,它具有從網站(使用JSON)獲取信息並將信息存儲在CoreData上的collectionview。Coredata + CollectionView

我在CoreData上有2個實體。 1調用區域(這將是集合標題文本)。 1稱爲分銷商(這將是收集單元格)。

要使用的CollectionView + CoreData我看到這個例子:https://github.com/AshFurrow/UICollectionViewExample

我設立寄託都和作品,但有時候,當我的devide多次,集合視圖仍然滾動旋轉,我看到這個錯誤:

*** 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

我希望得到任何幫助,如果任何人知道什麼是合作這是問題。

在此先感謝。

回答

0

您沒有正確使用核心數據。你的實體彼此沒有關係。相反,你依靠某種外鍵。這不適用於核心數據等對象圖形,並可能導致各種不可預知的錯誤,包括您遇到的錯誤。

瞭解Core Data模型的工作原理。請特別注意核心數據編程指南中的章節Relationships and Fetched Properties

+0

您好:感謝您的鏈接,我會看看。我不關心這個關係是集合視圖上的問題,只是從分佈者實體中獲取對象,這些區域實體被註釋並且硬編碼了代碼中顯示的名稱。我認爲不可能是這個問題。 – Miguel

+0

這不是核心數據問題,這是試圖檢測鏈接或其他數據的標籤和文本視圖的問題。 –

+0

很高興知道。這個問題並不明顯。謝謝。 – Mundi

2

我不認爲這與CoreData有什麼關係。我認爲這與iOS 7中與doURLificationOnDocument相關的錯誤有關。我們在我們的應用中遇到了同樣的問題,因此無法使用任何核心數據。如果你看看這個堆棧溢出鏈接:iOS 7 UITextView link detection crash in UITableView,你會看到有人抱怨同樣的問題。

+0

我找到了一個很好的解決方案,並在上面的線程中添加了答案。 http://stackoverflow.com/a/25718283/1567221 –