iOS enrolar animação para remover uiimageview
-
27-10-2019 - |
Pergunta
estou tentando remover uma imagem do meu aplicativo com uma animação de enrolamento.Eu tenho
[UIView transitionWithView:sender.view.superview duration:1.5
options:UIViewAnimationOptionTransitionCurlUp
animations:^ { [sender.view removeFromSuperview]; }
completion:nil];
mas isso enrola a página inteira e parece que há uma página separada abaixo, sem a imagem.
Em vez de uma 'transição' para uma nova página, é possível enrolar a imagem para fora da página sem afetar o resto da página?Preciso envolver a visualização da imagem em uma 'visualização de contêiner' e alterar a transição para isso?
Solução
Seu parâmetro de visualização é sender.view.superview
, o que significa que você deseja que a supervisão seja animada.Basta remover a parte do superview.
Editar: também, para algo animar, deve ser uma propriedade animável.Remover uma visão da supervisão não tem nada a ver com suas propriedades.Você pode animar a visualização para 0 alfa e, ao concluir a animação, removê-la da visualização da seguinte forma:
[UIView transitionWithView:sender.view
duration:1.5
options:UIViewAnimationOptionTransitionCurlUp
animations:^ { sender.view.alpha = 0; }
completion:^ { [sender.view removeFromSuperview]; }];