ios - UIScrollView _delegateScrollViewAnimationEnded crash -
i'm seeing crash in uiscrollview because delegate released memory before scrollview has finished animation.
i know cause, , solution should manually nil out delegate of uiscrollview when delegate hits own dealloc call. i've done every viewcontroller can find has uiscrollview subview, crash still persists. know root cause uiscrollview's delegate assign instead of weak, , i'm curious if can override somehow (through category?).
is there solution?
here's dump of crash, find curious 1 of calls on stack references uitextview (which inherits uiscrollview), offer clue location of offending uiscrollview?
crashed: com.apple.main-thread exc_bad_access kern_invalid_address @ 0xc1a9e521 0 libobjc.a.dylib objc_msgsend + 5 respondstoselector: 1 uikit -[uiscrollview(uiscrollviewinternal) _delegatescrollviewanimationended] + 52 2 uikit -[uiscrollview(uiscrollviewinternal) _scrollviewanimationended:finished:] + 184 3 uikit -[uitextview _scrollviewanimationended:finished:] + 306 4 uikit -[uianimator stopanimation:] + 476 5 uikit -[uianimator(static) _advanceanimationsoftype:withtimestamp:] + 304 6 uikit -[uianimator(static) _lcdheartbeatcallback:] + 52 7 quartzcore ca::display::displaylinkitem::dispatch() + 98 8 quartzcore ca::display::displaylink::dispatch_items(unsigned long long, unsigned long long, unsigned long long) + 366 9 iomobileframebuffer iomobileframebuffervsyncnotifyfunc + 90 10 iokit iodispatchcalloutfromcfmessage + 256 11 corefoundation __cfmachportperform + 132 18 uikit uiapplicationmain + 1440
this may same following issue. set uiscrollview
's delegate
nil
in dealloc
Comments
Post a Comment