Your SlideShare is downloading. ×
0
O fantástico
mundo de Android

Suelen G. Carvalho
Quem sou eu

www.SuelenGC.com.br | slideshare.net/suelengc
MULHERES15!
!
!

Cupom especial para o dia das mulheres!!
15% de desconto
O que é o Android ?
Linguagem

IDE

www.developer.android.com

ADT
Activity
Criar uma tela
Activity

SuaActivity
SuaActivity.java
public class SuaActivity extends Activity {
protected void onCreate (Bundle b) {
super.onCreate(b);
setCo...
Olá Mundo!
Estrutura de diretórios

resources

ProjetoAgenda!
src
SuaActivity.java
comportamento
res
layout
main_activity.xml	
  
dra...
Outras view's
Nome:

<TextView…/>

<EditText…/>

Telefone:
Nota:

<RatingBar…/>

Salvar

<Button…/>
<LinearLayout xmlns=“…” >
<EditText android:text=“Nome: “…/>
<TextView…/>
!

<EditText android:text=“Telefone: “…/>
<TextV...
Comportamento ao botão
public class SuaActivity extends Activity {
protected void onCreate (Bundle b) {
super.onCreate(b);...
Ciclo de Vida da Activity
Ciclo de vida de uma Activity
onCreate
!

onStart
!

onResume
Android Kill

onRestart

onPause
!

onStop
!

onDestroy
Listas e Adapter's
Exibir uma lista
Fulano
Beltrano
Ciclano
Adapter
Fulano

Beltrano Ciclano

Fulano
Beltrano
Ciclano

0

1
2
Objetos (Java)
View (xml)
public class SuaActivity extends Activity {
protected void onCreate (Bundle b) {
// código anterior…
!

// Objetos Java
St...
Banco de Dados
Criar um DAO
SQLiteOpenHelper

ContatoDAO
SQLiteOpenHelper
public class ContatoDAO extends SQLiteOpenHelper {
public void ContatoDAO(Context ctx) {
super(ctx, “agen...
Incluindo um contato
public class ContatoDAO extends SQLiteOpenHelper {
// código anterior…
!
public void adiciona(Contato...
Apagando um contato
public class ContatoDAO extends SQLiteOpenHelper {
!

public void apaga(Contato contato){
String[] ids...
Buscando os contatos
public class ContatoDAO extends SQLiteOpenHelper {
!
public List<Contato> busca(Contato contato){
Lis...
Atualizando um contato
public class ContatoDAO extends SQLiteOpenHelper {
public void atualiza(Contato contato){
ContentVa...
Estou por aí se precisarem ;)
O fantástico mundo de Android
Upcoming SlideShare
Loading in...5
×

O fantástico mundo de Android

2,159

Published on

Published in: Technology
0 Comments
4 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,159
On Slideshare
0
From Embeds
0
Number of Embeds
12
Actions
Shares
0
Downloads
12
Comments
0
Likes
4
Embeds 0
No embeds

No notes for slide

Transcript of "O fantástico mundo de Android"

  1. 1. O fantástico mundo de Android Suelen G. Carvalho
  2. 2. Quem sou eu www.SuelenGC.com.br | slideshare.net/suelengc
  3. 3. MULHERES15! ! ! Cupom especial para o dia das mulheres!! 15% de desconto
  4. 4. O que é o Android ?
  5. 5. Linguagem IDE www.developer.android.com ADT
  6. 6. Activity
  7. 7. Criar uma tela Activity SuaActivity
  8. 8. SuaActivity.java public class SuaActivity extends Activity { protected void onCreate (Bundle b) { super.onCreate(b); setContentView(R.layout.main_activity) ! // restante do seu código aqui… } } (comportamento) main_activity.xml <LinearLayout xmlns=“…” > <TextView android:layout_width=“wrap_content” android:layout_height=“wrap_content” android:text=“Olá Mundo!” … /> </LinearLayout> (view)
  9. 9. Olá Mundo!
  10. 10. Estrutura de diretórios resources ProjetoAgenda! src SuaActivity.java comportamento res layout main_activity.xml   drawable-mdpi! icon.jpg drawable-ldpi! view icon.jpg   values! ! ! strings.xml
  11. 11. Outras view's
  12. 12. Nome: <TextView…/> <EditText…/> Telefone: Nota: <RatingBar…/> Salvar <Button…/>
  13. 13. <LinearLayout xmlns=“…” > <EditText android:text=“Nome: “…/> <TextView…/> ! <EditText android:text=“Telefone: “…/> <TextView…/> ! <EditText android:text=“Nota: “…/> <RatingBar…/> ! <Button android:text=“Salvar“ android:id=“@+id/btn_salvar“…/> <!-- cotinua… --> </LinearLayout>
  14. 14. Comportamento ao botão public class SuaActivity extends Activity { protected void onCreate (Bundle b) { super.onCreate(b); setContentView(R.layout.main_activity) ! // Recupera o botão da tela Button salvar = (Button) findViewById(R.id.btn_salvar); ! //Adiciona comportamento ao botão salvar.setOnClickListener(new OnClickListener() { public void onClick(View view) { // COMPORTAMENTO AQUI… } }); } }
  15. 15. Ciclo de Vida da Activity
  16. 16. Ciclo de vida de uma Activity onCreate ! onStart ! onResume Android Kill onRestart onPause ! onStop ! onDestroy
  17. 17. Listas e Adapter's
  18. 18. Exibir uma lista Fulano Beltrano Ciclano
  19. 19. Adapter Fulano Beltrano Ciclano Fulano Beltrano Ciclano 0 1 2 Objetos (Java) View (xml)
  20. 20. public class SuaActivity extends Activity { protected void onCreate (Bundle b) { // código anterior… ! // Objetos Java String[] contatos = new String[]{“Fulano”, “Beltrano”, “Ciclano”}; ! // Adapter (java -> xml) ArrayAdapter<String> adapter = new ArrayAdapter<String> (this, android.R.layout.simple_list_item_1, contatos); ! // Vincular adapter a lista ListView lista = (ListView) findViewById(R.id.lista); lista.setAdapter(adapter); } }
  21. 21. Banco de Dados
  22. 22. Criar um DAO SQLiteOpenHelper ContatoDAO
  23. 23. SQLiteOpenHelper public class ContatoDAO extends SQLiteOpenHelper { public void ContatoDAO(Context ctx) { super(ctx, “agenda", null, 1); } public void onCreate (SQLiteDataBase db) { String ddl = “create table contato (name text, telefone text);“; db.execSQL(ddl); } ! public void onUpgrade (SQLiteDataBase db) { // vamos deixar vazio por enquanto } }
  24. 24. Incluindo um contato public class ContatoDAO extends SQLiteOpenHelper { // código anterior… ! public void adiciona(Contato contato){ // insere contato no banco… ContentValues values = new ContentValues(); values(“nome”, contato.getNome()); values(“telefone”, contato.getTelefone()); ! getWritableDatabase().insert(“agenda”, null, values); } // apagar, atualizar e buscar aqui em breve ;) }
  25. 25. Apagando um contato public class ContatoDAO extends SQLiteOpenHelper { ! public void apaga(Contato contato){ String[] ids = {contato.getId().toString()}; getWritableDatabase().delete(“agenda”, “id=?”, ids); } ! }
  26. 26. Buscando os contatos public class ContatoDAO extends SQLiteOpenHelper { ! public List<Contato> busca(Contato contato){ List<Contato> contatos = new ArrayList<Contato>(); ! SQLiteDatabase database = getReadableDatabase(); Cursor cursor = database.rawQuery(“select * from agenda;”, null); ! while (cursor.moveToNext()) { Contato contato = criarContatoDo(cursor); contatos.add(contato); } return contatos; } }
  27. 27. Atualizando um contato public class ContatoDAO extends SQLiteOpenHelper { public void atualiza(Contato contato){ ContentValues values = new ContentValues(); values(“nome”, contato.getNome()); values(“telefone”, contato.getTelefone()); String[] ids = {contato.getId().toString()}; ! getWritableDatabase().update(“agenda”, values, id, ids); } }
  28. 28. Estou por aí se precisarem ;)
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×