Ao tentar exibir o alerta final do valor das medias, o app lanca uma exception e fecha. Detectei o mesmo erro quando tentei executar o codigo pronto, disponivel no fim do curso
Ao tentar exibir o alerta final do valor das medias, o app lanca uma exception e fecha. Detectei o mesmo erro quando tentei executar o codigo pronto, disponivel no fim do curso
O que aparece no console? Ali provavelmente te dê uma boa visão do porquê do erro.
ao dar a exception, recebo a seguinte mensagem:
*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Modifications to the layout engine must not be performed from a background thread after it has been accessed from the main thread.'
Tente usar:
DispatchQueue.main.async {
// Seu alerta aqui dentro
}
Ajudaria também colocar o código que você utilizou para dar esse crash
Entendido. A funcao ficou desta maneira:
@IBAction func buttonCalculaMedia(_ sender: UIBarButtonItem) {
DispatchQueue.main.async {
guard let listaDeAlunos = self.gerenciadorDeResultados?.fetchedObjects else { return }
CalculaMediaAPI().calculaMediaGeralDosAlunos(alunos: listaDeAlunos, sucesso: { (dicionario) in
if let alerta = Notificacoes().exibeNotificacaoDeMediaDosAlunos(dicionarioDeMedia: dicionario) {
print(dicionario)
self.present(alerta, animated: true, completion: nil)
}
}) { (error) in
print(error.localizedDescription)
}
}
}
Mas ainda assim, o erro continua:
2019-11-19 18:05:32.293160-0300 Agenda[1890:103590] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Modifications to the layout engine must not be performed from a background thread after it has been accessed from the main thread.'