J'ai un UIScrollView qui contient une "Draw View" que l'utilisateur peut dessiner à main levée avec UIBezierPath. Il utilise CATiledLayer pour pouvoir zoomer sans flou. Lorsque je dessine les chemins, il n'y a pas d'erreur EXC_BAD_ACCESS malgré le fait que le trait soit appelé plusieurs fois.EXC_BAD_ACCESS lors du tracé de UIBezierPath lors de la traduction à l'aide de CATiledLayer
Cependant, lorsque je traduis un chemin en utilisant CGAffineTransForm, il dure moins de quelques secondes avant de lancer une erreur EXC_BAD_ACCESS lorsque le chemin est parcouru. Il crée également visuellement des artefacts avec le chemin. Je suis certain que cela a quelque chose à voir avec CATiledLayer ne pas aimer la traduction, parce que quand j'arrête d'utiliser CATiledLayer il n'y a aucun problème - le chemin se traduit comme prévu sans artefacts. Cependant, j'ai besoin de la fonction CATiledLayer pour zoomer sans flou (pour autant que je sache, il n'y a pas d'autre solution que de simplement régler contentscalefactor au niveau du zoom).
L'utilisation de la mémoire/CPU n'est pas anormale lorsque l'erreur est déclenchée.
Il est intéressant de noter que j'utilise les betas iOS 11 et Xcode 9. (Edit: arrive aussi sur iOS 10, mais utilise toujours le même Xcode 9 Beta)
J'ai essayé d'activer des objets zombies mais cela ne fournit aucune information utile.
Mais votre code est secret? – matt