iOS: Obtenir une erreur concernant le bouton TAP
-
21-12-2019 - |
Question
Pour une raison quelconque, je reçois une erreur lors de la prise d'un bouton qui est connecté à une ibaction. Dans mon homologueController, un utilisateur effectue une action, ajoutant une nouvelle vueController à la navigationController, et dans cette vue Vue du contrôleur est une vue plus petite contenant le bouton . J'ai réveillé mon code et j'ai regardé à travers l'inspecteur de voir si j'ai raté tout ce que rien de bizarre se distinguait.
Voici mon fichier de contrôleur d'affichage ajouté .h fichier:
@property (weak, nonatomic) IBOutlet UIView *popupView;
@property (weak, nonatomic) IBOutlet UIImageView *blurredImageView;
@property (weak, nonatomic) UIImage *blurredImage;
- (void)presentEventEditViewControllerWithEventStore:(EKEventStore*)eventStore;
- (IBAction)addEvent:(id)sender;;
- (IBAction)cancelEvent:(id)sender;
Lorsque je touche un bouton sans relier les ibactions à l'un d'eux, aucune erreur. Dès que je les lierais, l'application bloque et affiche l'erreur suivante:
P.s. J'ai également reçu ce qui suit dans une erreur préalable (avant le déshabillage et la réinitiation):
-[OS_xpc_connection cancelEvent:]:
mise à jour:
Je charge la bannerviewController de la manière suivante:
BannerPopUpViewController *BPV = [[BannerPopUpViewController alloc] initWithNibName:@"BannerPopUpViewController" bundle:nil];
BPV.blurredImage = [self screenshot];
[self.view.window addSubview:BPV.view];
Voici la première erreur que je faisais appelé, avec courtoisie de Crosslytics:
Mais celui que je continue à obtenir, car je n'ai pas déveru l'action et que je suis décrié, c'est ce qui suit:
La solution
Quand vous faites:
[self.view.window addSubview:BPV.view];
La vue est conservée par sa superview (la fenêtre dans ce cas), mais rien ne retient le contrôleur de vue BPV.Quelque chose doit être servi ou si vous appuierez chaque bouton, il entraînera un appel à un objet détruit (allumez des zombies pour vérifier).
Conservez BVP quelque part en le sauveant dans une propriété forte de l'ajouter en tant que contrôleur de vue du chili.