O documento descreve as etapas para atualizar as famílias de fontes de um aplicativo Pokédex para Android. Inicialmente, o aplicativo usa apenas fontes Roboto. O processo envolve baixar e inserir as fontes Pokémon Hollow e Solid, identificar quais trechos podem ser atualizados via XML e quais requerem programação, e a ordem para realizar as atualizações considerando o que é mais fácil primeiro. O objetivo é aplicar as fontes Pokémon de forma consistente em diferentes componentes do aplicativo para melhorar a experiência do usuário
3. APLICATIVO DE ANIME
- App Pokédex do desenho
Pokémon;
- A família de fontes do
anime é parte do logo dele;
- Atualmente as fontes do
projeto são todas Roboto,
sans-serif.
4. PRÉ-REQUISITO
Para poder prosseguir com o conteúdo deste conjunto de slides é importante que
você conheça a API Fonts in XML apresentada no artigo: Fontes em XML,Android O.
Configuração e Uso.
O código do projeto está no seguinte GitHub: https://github.com/viniciusthiengo/
pokedex.
6. COM FONTES POKÉMON SOLID
- TítuloToolbar;
- Nome, do usuário conectado, no
cabeçalho do menu gaveta;
- Título de grupo de subitens no
menu gaveta;
- Título, encolhido e expandido, da
atividade de detalhes;
- Títulos de seções na atividade de
detalhes.
7. COM FONTES POKÉMON HOLLOW
- Itens de menu da barra de
topo;
- Numeração dos pokémons
no framework de lista em
uso, RecyclerView.
*Todos os outros trechos do projeto
continuaram com fontes sans-serif.
9. MODELO DE DESENVOLVIMENTO FACEBOOK
Primeiro o fácil, para depois seguirmos para as
partes difíceis.
Ordem de atualização:
- Trechos com atualização somente em XML:
- Itens de menu da barra de topo;
- TítuloToolbar;
- Cabeçalho do menu gaveta;
- Itens de lista;
- Descrição de pokémon na atividade de
detalhes.
- Títulos encolhido e expandido da atividade
de detalhes;
- Texto de informação do Snackbar;
- Texto de informação doToast;
- Itens e subitens do menu gaveta.
10. FAMÍLIA DE FONTES PADRÃO
- Veja quais partes do aplicativo
não são passíveis de
atualização via atributos XML
e via programação;
- Defina como fonte padrão do
app a fonte necessária nessas
áreas;
- Fontes de itens de menu de
barra de topo são atualizáveis
somente pela definição de
fonte padrão do aplicativo no
arquivo styles de tema.
12. BAIXANDO E INSERINDO AS FONTES
As fontes Pokémon Hollow e Pokémon Solid estão no
link a seguir, faça o download:
http://www.dafont.com/pt/pokemon.font
- Atualize os nomes das
fontes para
pokemon_hollow e
pokemon_solid;
- Coloque as fontes .ttf no
folder /res/font do projeto.
13. ITENS DE MENU DE BARRA DETOPO
- Devem ter a fonte
pokemon_hollow;
- Local não passível de
atualização via atributos
XML e via programação;
- Necessária a definição
da fonte
pokemon_hollow no
tema do aplicativo.
14. TÍTULOTOOLBAR
- Deve ter a fonte
pokemon_solid;
- Local passível de
atualização via atributos
XML:
- titleTextAppearance;
- subtitleTextAppearance;
- Necessidade de um novo
styleTextAppearance;
15. CABEÇALHO MENU GAVETA
- Fonte
pokemon_solid
para o nome do
usuário;
- Fonte sans-serif
para o email do
usuário;
- Atualização via
atributo fontFamily.
16. ITENS DO FRAMEWORK DE LISTA
- Fonte pokemon_hollow
(padrão no projeto) para o
número do pokémon;
- Fonte sans-serif para o
nome e os tipos do
pokémon;
- Atualização via atributo
fontFamily.
17. Descrição, detalhes, do pokémon
- Fonte pokemon_solid
para títulos de itens
informativos;
- Fonte sans-serif para
itens informativos;
- Atualização via atributo
fontFamily.
18. Títulos encolhido e expandido
- Fonte pokemon_solid para
ambas as versões de títulos em
CollapsingToolbarLayout;
- Apesar de existirem, os atributos
TextAppearance não têm efeito
quando utilizados;
- Atualização via programação
utilizando ResourcesCompat e
os métodos:
- setCollapsedTitleTypeface();
- setExpandedTitleTypeface().
19. Snackbar
- Família de fontes sans-
serif, pois facilita a
leitura neste trecho do
projeto;
- Atualização via
programação
utilizandoTypeface e o
método create();
20. Toast - Layout
- Família de fontes sans-serif;
- Necessidade de criação de
layout personalizado e de
um shape XML para
bordas curvas do layout;
- Atualização via
programação utilizando
Typeface e o método
create();
22. Itens e subitens menu gaveta - Classe Span
- Família de fontes sans-serif
para os itens e subitens;
- Família de fontes
pokemon_solid para títulos
de grupos de subitens;
- Necessidade de uso de uma
SpannableString e uma
subclasse deTypefaceSpan;
- Novamente o trabalho com
Typeface e o método
create().