SlideShare uma empresa Scribd logo
ANDROID ANNOTATIONS
Que sou eu?

Rodrigo Amora

Desenvolvedor Web
desde 2009

Desenvolvedor
Mobile desde 2011

Meu Apps Android:
http://goo.gl/Y7D9X

Meus Apps iOS:
http://goo.gl/sVpNU7
Contatos

Twitter: @RodrigoAmora

E-mail: rodrigo.amora.freitas@gmail.com

About.me: about.me/rodrigoamora
Sobre o Android Annotations
O AndroidAnnotations é um framework open-
source feito para facilitar e agilizar o
desenvolvimento Android através do uso de
anotações.
http://androidannotations.org/
@EActivity e @EFragment
Anotações que injetam o layout nas telas:
@EActivity(R.layout.activity_layout)
@EFragment(R.layout.fragement_layout)
@EActivity e @EFragment
Exemplos:
@EFragment(R.layout.my_layout)
public class MyFragment extends Fragment {
}
@EActivity(R.layout.activity_main)
public class MyActivity extends Activity {
}
@EActivity e @EFragment
Ao instanciar uma Acitivity ou Fragment anotada
ela deve ser chamada com “_” a direita.
Isso por que o AndroidAnnotations gera uma
subclasse da mesma.
MyActivity activity = new MyActivity_();
MyFragment fragment = new MyFragment_();
@EActivity e @EFragment
Isso também vale para o arquivo
AndroidManifest:
<activity
android:name=".MyActivity_"
android:label="@string/app_name" />
@ViewById
Injeta os componentes, faz o mesmo papel do
método findById(R.id.id_do_componente).
Exemplo:
@ViewById(R.id.btSave)
Button btSave;
@ViewById(R.id.tfName)
EditText tfName;
@AfterViews
Diz ao AndroidAnnotations qual método a ser
executado após a criação da Activity ou Fragment.
@AfterViews
public void facaAlgumaCoisa() {
//Implementação….
}
Interação com os componentesAnotações utilizadas para capturar os eventos
com os componentes:
@Click(R.id.id_do_componente) → Usado para
capturar evento de clique.
@DoubleClick(R.id.id_do_componente) →
Usado para capturar evento de duplo clique.
@ItemClick(R.id.id_do_componente) → Usado
em ListView e GridView para capturar o item
selecionado.
Interação com os componentes
Exemplos:
@Click(R.id.btSave)
public void save() {
//Implementação….
}
@Background
Anotação utilizada para realizar tarefas em
Background.
@Click
void save() {
saveInBackground(tfName.getText().toString());
}
@Background
void saveInBackground(String textToTranslate) {
//Implementação...
@EService
Anotação usada para classes quer herdam de Service.
@EService
public class MyService extends Service {
}
@SystemService
Injeta o System Service correspondente:
@SystemService
NotificationManager notificationManager;
@SystemService
LocationManager locationManager;
@SystemService
ConnectivityManager connectivityManager;
OBRIGADO

Mais conteúdo relacionado

PDF
Buzzmonitor julho 2013 estudo segmento automotivo
PDF
Api do twitter
PPTX
Primeiros passos desenvolvimento para Windows 8
PPTX
MSP Windows 8 Day
DOC
Elester_Resume12_2016
PPTX
A lenda s. martinho 11 12
PDF
Como Funciona o Kernel Linux - Fábio Olivé Leite
PPT
Ao mestre com carinho
Buzzmonitor julho 2013 estudo segmento automotivo
Api do twitter
Primeiros passos desenvolvimento para Windows 8
MSP Windows 8 Day
Elester_Resume12_2016
A lenda s. martinho 11 12
Como Funciona o Kernel Linux - Fábio Olivé Leite
Ao mestre com carinho

Destaque (20)

PDF
Fichadeinscriçãoprocessoseletivo2010
PPT
Caso # 2 posible apendicitis
PPT
Cnrhepatitis08
PDF
Desenvolvendo Sistemas de Arquivos no FUSE - Luis Otávio de Colla Furquim
PPTX
Design e empreendedorismo balaio design e comunicacao
PPTX
Introdução ao RecyclerView
PDF
O ENVOLVIMENTO DOS TREINANDOS
PPT
Toxoplasmosis i
PPS
Lamina rua euclides da cunha, 1501
PPT
Patología testicular
PDF
Infiltrando Rails no Governo: Agile, Lean Startup e um case concreto no Gover...
DOCX
FinalDraft
PDF
Fases processo gilderlan ribeiro
PPT
25 radiologia de la via biliar
PDF
Firewall Definitivo - William Souza
PPTX
Analise comparativa
PDF
Edital elson ribeiro
PPT
11 ruptura prematura_de_membranas
ODP
Educação e Cibercultura
Fichadeinscriçãoprocessoseletivo2010
Caso # 2 posible apendicitis
Cnrhepatitis08
Desenvolvendo Sistemas de Arquivos no FUSE - Luis Otávio de Colla Furquim
Design e empreendedorismo balaio design e comunicacao
Introdução ao RecyclerView
O ENVOLVIMENTO DOS TREINANDOS
Toxoplasmosis i
Lamina rua euclides da cunha, 1501
Patología testicular
Infiltrando Rails no Governo: Agile, Lean Startup e um case concreto no Gover...
FinalDraft
Fases processo gilderlan ribeiro
25 radiologia de la via biliar
Firewall Definitivo - William Souza
Analise comparativa
Edital elson ribeiro
11 ruptura prematura_de_membranas
Educação e Cibercultura
Anúncio

MobileConf 2015: Android Annotations

  • 2. Que sou eu?  Rodrigo Amora  Desenvolvedor Web desde 2009  Desenvolvedor Mobile desde 2011  Meu Apps Android: http://goo.gl/Y7D9X  Meus Apps iOS: http://goo.gl/sVpNU7
  • 4. Sobre o Android Annotations O AndroidAnnotations é um framework open- source feito para facilitar e agilizar o desenvolvimento Android através do uso de anotações. http://androidannotations.org/
  • 5. @EActivity e @EFragment Anotações que injetam o layout nas telas: @EActivity(R.layout.activity_layout) @EFragment(R.layout.fragement_layout)
  • 6. @EActivity e @EFragment Exemplos: @EFragment(R.layout.my_layout) public class MyFragment extends Fragment { } @EActivity(R.layout.activity_main) public class MyActivity extends Activity { }
  • 7. @EActivity e @EFragment Ao instanciar uma Acitivity ou Fragment anotada ela deve ser chamada com “_” a direita. Isso por que o AndroidAnnotations gera uma subclasse da mesma. MyActivity activity = new MyActivity_(); MyFragment fragment = new MyFragment_();
  • 8. @EActivity e @EFragment Isso também vale para o arquivo AndroidManifest: <activity android:name=".MyActivity_" android:label="@string/app_name" />
  • 9. @ViewById Injeta os componentes, faz o mesmo papel do método findById(R.id.id_do_componente). Exemplo: @ViewById(R.id.btSave) Button btSave; @ViewById(R.id.tfName) EditText tfName;
  • 10. @AfterViews Diz ao AndroidAnnotations qual método a ser executado após a criação da Activity ou Fragment. @AfterViews public void facaAlgumaCoisa() { //Implementação…. }
  • 11. Interação com os componentesAnotações utilizadas para capturar os eventos com os componentes: @Click(R.id.id_do_componente) → Usado para capturar evento de clique. @DoubleClick(R.id.id_do_componente) → Usado para capturar evento de duplo clique. @ItemClick(R.id.id_do_componente) → Usado em ListView e GridView para capturar o item selecionado.
  • 12. Interação com os componentes Exemplos: @Click(R.id.btSave) public void save() { //Implementação…. }
  • 13. @Background Anotação utilizada para realizar tarefas em Background. @Click void save() { saveInBackground(tfName.getText().toString()); } @Background void saveInBackground(String textToTranslate) { //Implementação...
  • 14. @EService Anotação usada para classes quer herdam de Service. @EService public class MyService extends Service { }
  • 15. @SystemService Injeta o System Service correspondente: @SystemService NotificationManager notificationManager; @SystemService LocationManager locationManager; @SystemService ConnectivityManager connectivityManager;