Comment puis-je définir la variable d'environnement CG_CONTEXT_SHOW_BACKTRACE?

J'ai trois buttons à mon avis. Après avoir défini le paramètre cornerRadus dans viewDidLoad (): button.layer.cornerRadius = 20 le message d'erreur suivant button.layer.cornerRadius = 20 dans le journal:

  <Error>: CGContextSaveGState: invalid context 0x0. If you want to see the backtrace, please set CG_CONTEXT_SHOW_BACKTRACE environmental variable. 

Des questions:

  • Comment puis-je définir la variable d'environnement CG_CONTEXT_SHOW_BACKTRACE?
  • Ou comment puis-je corriger cet avertissement?

Ok, j'ai le backtrace maintenant du message. Cela n'a aucun sens pour moi. Certains aident s'il vous plaît …

 Aug 7 14:27:00 <Error>: CGContextSaveGState: invalid context 0x0. Backtrace: <-[UIStatusBarItemView updateContentsAndWidth]+33> <-[UIStatusBarItemView initWithItem:data:actions:style:]+477> <+[UIStatusBarItemView createViewForItem:withData:actions:foregroundStyle:]+134> <-[UIStatusBarLayoutManager _createViewForItem:withData:actions:]+163> <-[UIStatusBarLayoutManager _prepareEnabledItemType:withEnabledItems:withData:actions:itemAppearing:itemDisappearing:]+36 <-[UIStatusBarLayoutManager prepareEnabledItems:withData:actions:]+92> <-[UIStatusBarForegroundView _setStatusBarData:actions:animated:]+797> <-[UIStatusBarForegroundView setStatusBarData:actions:animated:]+332> <__51-[UIStatusBar _prepareToSetStyle:animation:forced:]_block_invoke+360> <+[UIView(Animation) performWithoutAnimation:]+65> <-[UIStatusBar _prepareToSetStyle:animation:forced:]+866> <-[UIStatusBar _requestStyleAtsortingbutes:animationParameters:forced:]+391> <-[UIStatusBar requestStyle:animationParameters:forced:]+437> <-[UIStatusBar requestStyle:animated:forced:]+90> <-[UIStatusBar _evaluateServerRegistration]+250> <__45-[UIView(Hierarchy) _postMovedFromSuperview:]_block_invoke+590> <-[UIView(Hierarchy) _postMovedFromSuperview:]+544> <-[UIView(Internal) _addSubview:positioned:relativeTo:]+1967> <-[UIStatusBarWindow setStatusBar:]+288> <-[UIApplication _createStatusBarWithRequestedStyle:orientation:hidden:]+340> <-[UIApplication _runWithMainScene:transitionContext:completion:]+950> <-[UIApplication workspaceDidEndTransaction:]+188> <-[FBSSerialQueue _performNext]+192> <-[FBSSerialQueue _performNextFromRunLoopSource]+45> <__CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__+17> <__CFRunLoopDoSources0+556> <__CFRunLoopRun+867> <CFRunLoopRunSpecific+488> <-[UIApplication _run]+402> <UIApplicationMain+171> <main+117> Aug 7 14:27:00 <Error>: CGContextTranslateCTM: invalid context 0x0. Backtrace: <-[UIStatusBarItemView updateContentsAndWidth]+33> <-[UIStatusBarItemView initWithItem:data:actions:style:]+477> <+[UIStatusBarItemView createViewForItem:withData:actions:foregroundStyle:]+134> <-[UIStatusBarLayoutManager _createViewForItem:withData:actions:]+163> <-[UIStatusBarLayoutManager _prepareEnabledItemType:withEnabledItems:withData:actions:itemAppearing:itemDisappearing:]+36 <-[UIStatusBarLayoutManager prepareEnabledItems:withData:actions:]+92> <-[UIStatusBarForegroundView _setStatusBarData:actions:animated:]+797> <-[UIStatusBarForegroundView setStatusBarData:actions:animated:]+332> <__51-[UIStatusBar _prepareToSetStyle:animation:forced:]_block_invoke+360> <+[UIView(Animation) performWithoutAnimation:]+65> <-[UIStatusBar _prepareToSetStyle:animation:forced:]+866> <-[UIStatusBar _requestStyleAtsortingbutes:animationParameters:forced:]+391> <-[UIStatusBar requestStyle:animationParameters:forced:]+437> <-[UIStatusBar requestStyle:animated:forced:]+90> <-[UIStatusBar _evaluateServerRegistration]+250> <__45-[UIView(Hierarchy) _postMovedFromSuperview:]_block_invoke+590> <-[UIView(Hierarchy) _postMovedFromSuperview:]+544> <-[UIView(Internal) _addSubview:positioned:relativeTo:]+1967> <-[UIStatusBarWindow setStatusBar:]+288> <-[UIApplication _createStatusBarWithRequestedStyle:orientation:hidden:]+340> <-[UIApplication _runWithMainScene:transitionContext:completion:]+950> <-[UIApplication workspaceDidEndTransaction:]+188> <-[FBSSerialQueue _performNext]+192> <-[FBSSerialQueue _performNextFromRunLoopSource]+45> <__CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__+17> <__CFRunLoopDoSources0+556> <__CFRunLoopRun+867> <CFRunLoopRunSpecific+488> <-[UIApplication _run]+402> <UIApplicationMain+171> <main+117> Aug 7 14:27:00 <Error>: CGContextRestoreGState: invalid context 0x0. Backtrace: <-[UIStatusBarItemView updateContentsAndWidth]+33> <-[UIStatusBarItemView initWithItem:data:actions:style:]+477> <+[UIStatusBarItemView createViewForItem:withData:actions:foregroundStyle:]+134> <-[UIStatusBarLayoutManager _createViewForItem:withData:actions:]+163> <-[UIStatusBarLayoutManager _prepareEnabledItemType:withEnabledItems:withData:actions:itemAppearing:itemDisappearing:]+36 <-[UIStatusBarLayoutManager prepareEnabledItems:withData:actions:]+92> <-[UIStatusBarForegroundView _setStatusBarData:actions:animated:]+797> <-[UIStatusBarForegroundView setStatusBarData:actions:animated:]+332> <__51-[UIStatusBar _prepareToSetStyle:animation:forced:]_block_invoke+360> <+[UIView(Animation) performWithoutAnimation:]+65> <-[UIStatusBar _prepareToSetStyle:animation:forced:]+866> <-[UIStatusBar _requestStyleAtsortingbutes:animationParameters:forced:]+391> <-[UIStatusBar requestStyle:animationParameters:forced:]+437> <-[UIStatusBar requestStyle:animated:forced:]+90> <-[UIStatusBar _evaluateServerRegistration]+250> <__45-[UIView(Hierarchy) _postMovedFromSuperview:]_block_invoke+590> <-[UIView(Hierarchy) _postMovedFromSuperview:]+544> <-[UIView(Internal) _addSubview:positioned:relativeTo:]+1967> <-[UIStatusBarWindow setStatusBar:]+288> <-[UIApplication _createStatusBarWithRequestedStyle:orientation:hidden:]+340> <-[UIApplication _runWithMainScene:transitionContext:completion:]+950> <-[UIApplication workspaceDidEndTransaction:]+188> <-[FBSSerialQueue _performNext]+192> <-[FBSSerialQueue _performNextFromRunLoopSource]+45> <__CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__+17> <__CFRunLoopDoSources0+556> <__CFRunLoopRun+867> <CFRunLoopRunSpecific+488> <-[UIApplication _run]+402> <UIApplicationMain+171> <main+117> 

C'est un bug en 9b5:
https://forums.developer.apple.com/thread/13683

Déposer un RADAR avec Apple.

Vous pouvez définir une variable d'environnement via ce menu: Produit -> Schéma -> Modifier le schéma. Sous l'élément "Exécuter", searchz l'onglet "Arguments", vous verrez "Variables environnementales" dans l'onglet, Ajouter CG_CONTEXT_SHOW_BACKTRACE et définissez sa valeur à OUI.

Ce problème arrive avec Xcode 7. Dans mon cas, j'ai supprimé le UIViewControllerBasedStatusBarAppearance d' Info.plist et le problème a été résolu! Voir la réponse dans ce post :

Sur Xcode 7:

Si vous souhaitez toujours que la barre d'état soit masquée, modifiez simplement UIViewControllerBasedStatusBarAppearance dans le file Info.plist en View controller-based status bar appearance . Ne pas oublier de le mettre par NO