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:

Entrez la description de l'image ici

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:

Entrez la description de l'image ici

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:

Entrez la description de l'image ici

Était-ce utile?

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.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top