1

アプリでPSTCollectionViewを使用しています。PSTCollectionViewControllerのサブクラスをUINavigationControllerチェーンに追加するまで、すべてが完全に機能します。ナビゲーションコントローラーの戻るボタンをタップすると、アプリがクラッシュしますEXC_BAD_ACCESS (code=1, address=0xc0000010)

PS:私はARCを使用しています。手伝ってくれてありがとう。

#0  0x01592d15 in objc_retain ()
#1  0x00030dde in -[PSTCollectionView setDelegate:] at <project_path>/Controllers/PSTCollectionView/PSTCollectionView.m:1225
#2  0x00725596 in -[UIScrollView dealloc] ()
#3  0x00023805 in -[PSTCollectionView dealloc] at <project_path>/Controllers/PSTCollectionView/PSTCollectionView.m:227
#4  0x01592e3d in _objc_rootRelease ()
#5  0x00718b73 in -[UIView(Hierarchy) removeFromSuperview] ()
#6  0x00728563 in -[UIScrollView removeFromSuperview] ()
#7  0x00714c10 in -[UIView dealloc] ()
#8  0x01592e3d in _objc_rootRelease ()
#9  0x01592e00 in objc_release ()
#10 0x01593c50 in (anonymous namespace)::AutoreleasePoolPage::pop(void*) ()
#11 0x01bf2ea8 in _CFAutoreleasePoolPop ()
#12 0x01bf580b in __CFRunLoopRun ()
#13 0x01bf4d84 in CFRunLoopRunSpecific ()
#14 0x01bf4c9b in CFRunLoopRunInMode ()
#15 0x024867d8 in GSEventRunModal ()
#16 0x0248688a in GSEventRun ()
#17 0x006e2626 in UIApplicationMain ()
#18 0x00001f4d in main at <project_path>main.m:16
#19 0x00001e75 in start ()
4

1 に答える 1

1

これはARC関連のもののようです。次のように PSTCollectionView.m を変更して修正しました。

- (void)setDelegate:(id<PSTCollectionViewDelegate>)delegate {
    if( !delegate )
        return;

    //Rest of the function as normal
}

これは私にはあまり意味がありませんが、うまくいきます。

于 2013-03-18T10:00:06.683 に答える