Estou usando o storyboard normal e as segues push no xcode, mas quero que as segues apareçam apenas na próxima exibição, não deslizando a próxima exibição (como quando você usa uma barra de guias e a próxima exibição simplesmente aparece).
Existe uma maneira simples e agradável de fazer com que segues push normais apenas "apareçam" e não "deslize", sem a necessidade de adicionar segues personalizados?
Tudo está funcionando perfeitamente bem, eu só quero remover aquela animação de slide entre as visualizações.
Respostas:
Consegui fazer isso criando uma segue personalizada (com base neste link ).
PushNoAnimationSegue
(ou como você decidiu chamá-la).Swift 4
Objetivo C
PushNoAnimationSegue.h
PushNoAnimationSegue.m
fonte
Você pode desmarcar "Animates" no Interface Builder para iOS 9
fonte
Identifier
nome diferente .A resposta de Ian funciona muito bem!
Esta é uma versão Swift do Segue, se alguém precisar:
ATUALIZADO PARA SWIFT 5, MAIO 2020
PushNoAnimationSegue.swift
fonte
Agora consegui fazer isso usando o seguinte código:
Espero que isso ajude mais alguém!
fonte
Esta é a versão do Swift adaptada para apresentar modalmente um ViewController sem animação:
fonte
responder usando Swift3 -
para segue "push":
para segue "modal":
fonte
Para qualquer pessoa que use o Xamarin iOS, sua classe segue personalizada precisa ser assim:
Não se esqueça de que você ainda precisa definir um segue personalizado em seu storyboard e definir a classe para a classe PushNoAnimationSegue.
fonte
Para mim, a maneira mais fácil de fazer isso é:
Disponível no iOS 7.0
fonte
Estou usando o Visual Studio c / Xamarin e o designer não fornece a marca de seleção "Animates" na resposta de dtochetto.
Observe que o designer XCode aplicará o seguinte atributo ao elemento segue no arquivo .storyboard: animates = "NO"
Eu editei manualmente o arquivo .storyboard e adicionei animates = "NO" ao (s) elemento (s) segue, e funcionou para mim.
Exemplo:
fonte
PUSH SEM ANIMAÇÃO: Swift Aqui está o que funcionou para mim.
Uso : Defina a classe segue do storyboard como mostrado na imagem. defina isAnimationRequired de seu viewcontroller como false de onde você deseja chamar performSegue, quando você deseja empurrar segue sem animação e definir novamente como true após chamar self.performSegue. Boa sorte ....
fonte
Basta definir
animated
falsa sobreUINavigationController.pushViewController
em Swiftfonte