O que um desenvolvedor iOS deve ter em mente?

Cláudio Madureira Silva
Usemobile
Published in
5 min readApr 20, 2017

Parte 1 — Características essenciais de um App e o que fazer ou não com Buttons, Pickers, Labels, Progress Indicators e outros

A Apple disponibiliza em seu site para desenvolvedores uma Guideline com várias recomendações sobre UI Design para apps iOS. Nesse post iremos apresentar algumas dessas recomendações enquanto acrescentamos dicas nossas.

Nós da Usemobile, quando desenvolvemos um aplicativo procuramos criar algo inovador que consiga combinar principalmente 4 características que a própria Apple sugere: integridade estética, consistência, manipulação direta e feedback.

“Integridade estética representa o quão bem a aparência de uma aplicação e seu comportamento se integram com suas funções.” — Apple

O tamanho do texto deve ser legível em qualquer momento com combinações certas de cores para melhor experiência do usuário. As informações (buttons, labels, text fields, etc) disponíveis na tela devem ter espaçamentos suficientes para que o usuário as identifique com clareza. Nesse momento do desenvolvimento procuramos enxergar cada detalhe, por menor que ele seja.

Um aplicativo consistente incorpora características da interface do próprio sistema operacional como ícones, fontes de texto e terminologia. Além disso ele deve promover uma boa experiência para o usuário permitindo que ele saiba como interagir com a interface e conseguir prever suas ações.

O feedback é crucial. O usuário deve sempre ser notificado se sua ação foi concluída com êxito, ou não. Por exemplo, quando ele clicar em um botão para salvar uma imagem, ele deve receber uma notificação comunicando se ela foi salva com sucesso ou se ocorreu algum erro que não permitiu sua ação.

Guideline

Vamos falar de alguns tópicos contidos na Guideline da Apple, são eles: UI Bars, UI Views, UI Controls.

UI Controls

Buttons, Edit Menus, Labels, Page Controls, Pickers, Progress Indicators, Segmented Controls, Sliders, Steppers, Switches, Text Fields

Buttons:

Seus títulos devem ser breves, sendo aconselhado o uso de verbos. Lembre-se que menos é mais. Botões muito pequenos podem ser indicados apenas por imagens. Afinal fontes muito pequenas são difíceis de ler. O background é usado somente quando necessário. A ideia é explicitar a área de interatividade do botão.

Atenção para os botões Default. A preferencia na hora de escolher o indicador é sempre usar os padrões do sistema. Um exemplo é o Add Button.

O botão Detail Disclosure Button, por padrão, apresenta uma View modal. Ele é usado em listas para acessar mais detalhes sobre o item contido naquela linha.

Edit Menus:

Apresentam comandos apropriados para o contexto atual. Por padrão eles devem aparecer quando o usuário realiza um duplo-clique ou quando ele clica e segura. A Apple aconselha implementar sempre para essas funções o Edit Menu apesar de nós aconselharmos usar formas mais amigáveis de interação para o usuário.

Labels:

Mantê-los sempre legíveis. Atenção para o Dynamic Type. Afinal quando o usuário definir o tamanho de fonte como máximo, o aplicativo deve permitir que ele consiga ler toda informação contida na Label.

Page Controls:

Não é recomendável para muitas páginas e quando existe hierarquia entre elas. Quando a próxima página depende de alguma interação da anterior é um caso de hierarquia e portanto um caso onde não usa-se Page Controls. Aconselha-se até 10 páginas para esse controle.

Pickers:

Os valores listados devem ser ordenadamente previsíveis e lógicos. Considera-se fornecer menos granulometria quando usado Date Picker para os minutos. Por exemplo, 5 em 5 minutos.

Use tabela ao invés de Picker para listas muito grandes. Por exemplo, no caso de selecionar uma cidade é mais rápido usar tabela.

Progress Indicators:

O Activity Indicator deve ser usado quando está carregando alguma tarefa não quantificável enquanto a Progress Bar Indicator quando uma tarefa é quantificável.

Dica Use: Indicar sempre que o aplicativo está utilizando internet através do Network Activity Indicator. Isso porque tem usuários que as vezes não dispõem de internet veloz sendo importante esse feedback de que o aplicativo está processando algo e utilizando a internet.

Segmented Controls:

Para esse controle deve-se evitar incluir muitos segmentos. O conteúdo do segmento deve ser apresentado de forma consistente. A Apple aconselha evitar inserir imagens e títulos ao mesmo tempo para um segmento.

Dica Use: Implemente no máximo 5 segmentos.

Slider:

Não deve ser utilizado para ajustar volume. Para isso use os próprios botões na lateral do iPhone. Sua aparência é alterada somente quando agregar valor ao aplicativo. Lembra-se sempre da consistência do aplicativo.

Stepper:

Quando interagido, deve-se passar um feedback para o usuário alterando o valor manipulado.

Em ocasiões em que o usuário for incrementar muito, evite usar o Stepper. Clicar muitas vezes pode tornar a interatividade cansativa.

Switch:

Aconselha-se nunca descrever o estado do Switch. Este é utilizado apenas em linhas de tabelas. Somente quando agregar valor ao aplicativo é que se personaliza o Switch.

Text Field:

Use sempre, para campos de senha, a proteção para o texto. Deve-se sempre disponibilizar o melhor Keyboard para aquele Text Field. Usa-se sempre o Placeholder para mostrar qual tipo de informação será inserida naquele Text Field.

Esse é um duplo post, por assim dizer. Continuamos agora no post

“O que um desenvolvedor iOS deve ter em mente? Parte 2”

do Desenvolvedor iOS Tulio Parreiras.

--

--

Cláudio Madureira Silva
Usemobile

iOS Developer, desenvolvo projetos para dispositivos móveis