ios - EXC_BAD_ACCESS when stroking UIBezierPath while translating using CATiledLayer -
i have uiscrollview contains "draw view" user can draw freehand uibezierpath's with. uses catiledlayer can zoom without blur.
when draw paths, there no exc_bad_access error despite stroke being called many times. however, when translate path using cgaffinetransform lasts less few seconds before throwing exc_bad_access error when path stroked. visually creates artefacts path.
i catiledlayer not liking translation, because when stop using catiledlayer there no issue whatsoever -- path translates expected no artefacts. however, need catiledlayer zoom without blurring (as far aware there no alternative solution other setting contentscalefactor zoom level).
the memory/cpu usage not abnormal when error thrown.
it's worth noting using ios 11 , xcode 9 betas. (edit: happens on ios 10 too, still using same xcode 9 beta)
i have tried turning on zombie objects isn't providing useful info.
catiledlayer
uses multiple threads draw it's content. many uikit operations need done main thread. best way keep advantages of tiled layer should using core graphics path instead of uikit path. see technical q&a 1637.
Comments
Post a Comment