Rennan Rebouças
3 min readAug 1, 2018

--

Peek and Pop na Collection usando Swift 4.1 e xcode 9.4.1

O que é peek and pop?

O método peek and pop faz parte da tecnologia da Apple chamada 3D Touch, que engloba Peek And Pop , Quick Action entre outros. Falaremos mais profundamente de como ele funciona e explicando o seu funcionamento na aplicação de exemplo.

Como funciona?

Falando da parte fisica dos novos iphones Para tornar o 3D Touch real, a Apple implementou novos sensores atrás do vidro e integrados ao painel LCD do aparelho capazes medir a força aplicada sobre a tela. Assim, os novos iPhones conseguem identificar não só os toques na horizontal e vertical, mas também sentir a a sua profundidade.

3D Touch virá integrado ao painel LCD do iPhone 6S (Foto: Reprodução/Apple)

Com o 3D Touch o iPhone será capaz de reconhecer uma gama muito maior de gestos e suportar muito mais atividades.

Ela funciona em aplicativos, permitindo que o usuário acesse as notificações sem ter que entrar na tela inicial do app(Quick Action) e promete ser bastante útil para visualizar informações sem sair da tela anterior (Peek and Pop).

Vamos fazer um exemplo de listar animes na CollectionView usando Peek and Pop.

Let`s Code

Como é sua implementação?

Criamos 3 Views gerenciadas por uma Navigation Controller, iramos chamar de MainView, PeekView e PopView. Na MainView colocamos uma CollectionView e na celula apenas uma ImageView. Na PeekView, onde irá mostrar a pré-visualização da tela pop, colocamos uma ImageView. E na PopView colocamos ImageView e textField.

Primeiramente iremos configurar a CollectionView, criamos uma classe para a CollectionView e pegamos seu IBOutlet da ImageView. Criamos uma ViewController para o Peek e outra para o Pop. Até agora nada de demais. 🧐

Agora funcionando a CollectionView , Colocamos o Seu Delegate no ViewController UICollectionViewDataSource,UICollectionViewDelegate, e implementamos suas funções para funcionar a Collection.

O numberOfItemsInSection e o cellForItemAt.E agora iremos preparar uma Segue para passar as imagens sem ser usando o 3D Touch.

Agora usando o 3D Touch, precisamos adicionar seu delegate o UIViewControllerPreviewingDelegate. Na ViewDidLoad fazemos o teste se o aparelho suporta aplicação do 3D Touch falamos qual View iremos usar.

Agora precisaremos usar duas funções para Funcionar o Peek and Pop. A primeira é responsável pela pré-visualização, nela é retornado qual a viewController será mostrado na pré-visualização, chamada de viewControllerForLocation.

Na segunda definimos a tela do Pop,e retornamos a viewcontroller no metodo viewControllerToCommit.

Link do programa completo

--

--