Maison  >  Questions et réponses  >  le corps du texte

ios - Value of type '() -> ()' can never be nil

1.升级Xcode之后,之前代码报错,报 Value of type '() -> ()' can never be nil, comparison isn't allowed

2.相关代码

if (self.action == nil) {
            return;
        }

self.action == nil 报错了。

 if refreshTempAction != nil {
                    refreshStatus = .Refresh
                    self.startAnimation()
                    UIView.animateWithDuration(0.25, animations: { () -> Void in
                        if scrollView.contentInset.top == 0 {
                            scrollView.contentInset = UIEdgeInsetsMake(self.getNavigationHeight(), 0, scrollView.contentInset.bottom, 0)
                        }else{
                            scrollView.contentInset = UIEdgeInsetsMake(ZLSwithRefreshHeadViewHeight + scrollView.contentInset.top, 0, scrollView.contentInset.bottom, 0)
                        }
                        
                    })

refreshTempAcstion != nil 报错。

怪我咯怪我咯2764 Il y a quelques jours416

répondre à tous(1)je répondrai

  • 阿神

    阿神2017-04-18 09:29:49

    Après avoir lu votre question « foirée » et les commentaires de @Cool Ai Dian, j'ai répondu :

    Les actions que vous définissez sont toutes des types non nullables. Bien sûr, vous ne pouvez pas juger si elles sont vides ou non. Xcode signalera certainement une erreur.
    Vous pouvez changer votre (() -> ()) ou (() -> Void) en (() -> Void)?.

    PS : avant de venir sur SegmentFault pour poser des questions à l'avenir, veuillez en apprendre un peu plus sur Markdown, ou utiliser ses outils de formatage. Le formatage de votre question est trop compliqué, ce qui rend. c'est difficile pour les gens qui veulent vous aider à y répondre. Impuissants, c'est difficile de comprendre votre question ; aussi, que vous écriviez du code ou que vous fassiez quoi que ce soit, vous devez être prudent (vous avez des fautes d'orthographe) ;

    répondre
    0
  • Annulerrépondre