Page View Controller do iOS no Figma

Simples passos para recriar as interações básicas do componente Page View Controller do iOS no seu protótipo do Figma.

Gois
Apple Developer Academy | Mackenzie
4 min readMar 27, 2020

--

Apresentação do projeto final.

Introdução

A prototipação é um processo que tem como objetivo facilitar o entendimento dos requisitos de uma aplicação. Além disso, ela permite apresentar conceitos e funcionalidades do software de modo simplificado. Neste projeto buscaremos recriar a interação básica do componente Page View Controller no iOS.

Requisitos

  • Conhecimento básico de Prototype no Figma

Passos

  • Configurando a “LaunchScreen” com “On Tap
  • Criando a primeira interação com “On Drag
  • Usando uma “trap” para para múltiplas interações
  • Criando as últimas conexões
  • Pronto, projeto finalizado

Configurando a “LaunchScreen” com “On Tap

Para iniciar vamos configurar a tela inicial do nosso protótipo e com um simples toque seguir para a próxima página.

Interação:

Configurar a “LaunchScreen” com “On Tap”
  1. Puxar a segue para da tela Tutorial_00 para a Tutorial_01
  2. Configurar o “On Tap na Interaction
  3. Em Animation configurar para “Instant

Resultado:

Com um click você vai para a próxima tela.

Criando a primeira interação com “On Drag

On Drag” é o movimento de deslizar o dedo de uma parte da tela para a outra, muitos programadores conhecem esse movimento por “Swipe”.

Interação:

Primeira interação com “On Drag”.
  1. Puxar a segue para da tela Tutorial_01 para a Tutorial_02
  2. Configurar o “On Tap na Interaction
  3. Em Animation configurar para “Instant
  4. Definir o Swipe da direita para a esquerda
  5. Agora as coisas ficam difíceis, para entender melhor a complexidade que é o Smart Animate, leia este artigo. Vou tentar falar um pouco a respeito depois que você ver o resultado abaixo:

Resultado:

Primeira interação com “On Drag”

Vamos falar um pouco do Smart Animate nessa transição. Perceba que algumas coisas aconteceram nela, entre elas estão:

  1. O botão Voltar apareceu como um tipo de “fade in
  2. O page controller, que são as três bolhinhas no centro na parte inferior fizeram a transição utilizando o alpha
  3. E o botão de principal não se mexeu

Isto se deve porque a transição esta sendo realizada com a opção “Smart Animate matching layers” ativada, essa opção permite que como o Figma afirma que seja buscado entre as duas telas layers com nomes iguais, sendo reconhecida as diferenças e com isso cria animações entre os frames dos layers automaticamente.

Assim, o botão Voltar na Tutorial_01 estava com a transparência em 0%, já na Tutorial_02 estava com a transparência em 100% o que fez que o comportamento se assemelhasse ao “fade in” do Swift, e o mesmo ocorreu para os outros elementos em tela.

Leia o artigo citado acima para entender melhor o processe, neste o link.

Usando uma “trap” para para múltiplas interações

Agora nós iremos animar a tela do meio que tem duas transições, uma para a Tutorial_01 e outra para o Tutorial_03, você consegue perceber o problema? Bom, o problema é que temos duas interações diferentes saindo do mesmo frame, ou seja, da Tutorial_02.
Para resolver isso, o que podemos fazer é montar dois objetos invisíveis que fiquem abaixo dos botões, porem encima das imagens e da descrição, e fazer com que cada um deles receba a função de ir para uma tela.

Interação 1, o primeiro objeto:

Múltiplas interações, o primeiro objeto.
  1. Criar o objeto com no lado direito da tela, tendo a mesma altura e metade do comprimento e puxando a segue para o Tutorial_01, repare que são as mesmas configurações que foram realizadas no passo anterior
  2. Definir o Swipe da esquerda para a direita

Interação 2, o segundo objeto:

Múltiplas interações, o segundo objeto.
  1. Criar o objeto com no lado esquerdo da tela, tendo a mesma altura e metade do comprimento e puxando a segue para o Tutorial_03, é a mesma configuração do primeiro objeto.
  2. Definir o Swipe da direita para a esquerda

Resultado:

Múltiplas interações, resultado.

Criando as últimas conexões

Para finalizar crie todas as conexões entre os elementos no seu protótipo e desfrute da sua Page View Controller.

Pronto, projeto finalizado

Entre no link abaixo para ver o arquivo do projeto ;)

Coloque a visualização em Fit para ver o dispositivo completo.

--

--

Gois
Apple Developer Academy | Mackenzie

 iOS Developer | Student | Researcher | Innovation Enthusiast.