|
Página 1 de 1
|
[ 16 Mensagens ] |
|
| Autor |
Mensagem |
|
saviopinho
Android application
Data de registro: 22 Mar 2010, 16:42 Mensagens: 50
|
 [Duvida]GridView
como se trabalha com gridview ?.. to atras e nada... eu quero algo to tipo carregar dados de uma tabela em um banco direto para o gridview, exibir os cabeçalhos como os nomes dos campos.. enfim... por exemplo, quero selecionar um registro no gridview, depois clicar em um botao Deletar e a partir daquele registro selecionado fazer um DELETE pelo _ID... mas para isso preciso preencher antes o gridview
|
| 26 Abr 2010, 16:19 |
|
 |
|
Marcelo Alves
Application Life Cycle
Data de registro: 10 Jul 2008, 11:40 Mensagens: 253 Localização: Reciife - PE
|
 Re: [Duvida]GridView
Opá amigo!! Em primeiro lugar aconselho você a aprender sobre como trabalhar com SQLite no Android, você acha bem fácil pela net ou em livros como no livro do nosso amigo Ricardo Lecheda. Outra coisa é esse link ( http://developer.android.com/resources/tutorials/views/hello-gridview.html) que pode dar uma ajuda inicial de como trabalhar com GridView. Espero ter ajudado. []'s Marcelo Alves
|
| 04 Mai 2010, 21:08 |
|
 |
|
saviopinho
Android application
Data de registro: 22 Mar 2010, 16:42 Mensagens: 50
|
 Re: [Duvida]GridView
mas ai so ensina a mexer com imagens... queria algo mais do tipo Data e tal.... o que eu quero dizer como trabalhar nao é so sintaxe e tal... queria algo mais do tipo  ou algum listbox... é possivel fazer isso com gridview ?
|
| 04 Mai 2010, 21:18 |
|
 |
|
Marcelo Alves
Application Life Cycle
Data de registro: 10 Jul 2008, 11:40 Mensagens: 253 Localização: Reciife - PE
|
 Re: [Duvida]GridView
É possível, se você perceber a Classe ImageAdapter é um BaseAdapter, nada impede de vc criar um mesmo adapter que ao invés de utilizar ImageView, utilize TextView, onde este texts serão populados com os dados contidos no banco de dados. E a forma que vc quer orgranizar que é a complexidade do negocio.
[]'s Marcelo Alves
|
| 04 Mai 2010, 21:47 |
|
 |
|
saviopinho
Android application
Data de registro: 22 Mar 2010, 16:42 Mensagens: 50
|
 Re: [Duvida]GridView
quer dizer que eu posso utilizar a mesma classe lá ?
parece que vai ser foda ein... mas valeu mesmo assim....
|
| 04 Mai 2010, 21:56 |
|
 |
|
Marcelo Alves
Application Life Cycle
Data de registro: 10 Jul 2008, 11:40 Mensagens: 253 Localização: Reciife - PE
|
 Re: [Duvida]GridView
Pode sim. Agora nao tenho nada em mãos, quando chegar em casa dou uma pesquisada e vejo se acho alguma coisa que facilite a tua vida =D..
[]'s Marcelo Alves
|
| 04 Mai 2010, 21:59 |
|
 |
|
saviopinho
Android application
Data de registro: 22 Mar 2010, 16:42 Mensagens: 50
|
 Re: [Duvida]GridView
nada ainda pessoal... eu queria saber de um jeito de se trabalhar com grid pra ficar de acordo com a imagem .... ou melhor... algum jeito de organizar um gridview em linhas e colunas por registro... pq pelo que eu percebi se vc preencher um gridview com ArrayList os dados vao ficar de acordo com o array list...
ou entao um listbox é possivel ?
|
| 10 Mai 2010, 13:04 |
|
 |
|
igor.chemin
Android application
Data de registro: 22 Nov 2011, 12:58 Mensagens: 84
|
 Re: [Duvida]GridView
Bom dia saviopinho! eu consegui fazer o que vc queria pegar dados do banco e jogar para grid view caso queira o código me avisa que posto aki. Agora estou tentando mudar o layout da grid para ficar igual o exemplo que vc mostrou na figura acima. Flw abraços
|
| 28 Dez 2011, 13:07 |
|
 |
|
pri_mor
Android application
Data de registro: 31 Mar 2011, 18:07 Mensagens: 55
|
 Re: [Duvida]GridView
Oiii igor.chemin eu estava querendo fazer algo do msmo tipo q vcs falaram aii e ainda naoo consegui tem como vc me mostrar como vc fez ou me dar algumas dicas?
obrigada
|
| 03 Fev 2012, 14:17 |
|
 |
|
Felipe Rocha Moraes
What is DDMS?
Data de registro: 04 Out 2011, 10:49 Mensagens: 33
|
 Re: [Duvida]GridView
Fala Igor! Tb gostaria de pedir pra se tiver como vc postar seu código aki e a tela com o resultado. Iria me ajudar tb, pois hj em dia uso ListView pra fazer esse trabalho, mas ela me limita em algumas coisas q kero fazer. À propósito, pelo q pude perceber, o GridView eh mais pra imagem. Quando vc tenta carregar com dados de um banco e selecionar uma linha, ele seleciona por célula e naum uma linha inteira. Esse foi um dos motivos q eu optei por usar a ListView.
|
| 03 Fev 2012, 14:43 |
|
 |
|
igor.chemin
Android application
Data de registro: 22 Nov 2011, 12:58 Mensagens: 84
|
 Re: [Duvida]GridView
Bom dia ! desculpa pela demora xml: <?xml version="1.0" encoding="utf-8"?> <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" android:background="#FFFFFF" > <ScrollView android:layout_width="fill_parent" android:layout_height="wrap_content"> <LinearLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="vertical"> <LinearLayout android:layout_width="fill_parent" android:layout_height="70px" android:background="#1C86EE" android:orientation="horizontal" android:layout_gravity="top"> <TextView android:layout_width="wrap_content" android:layout_height="fill_parent" android:text="Categoria" android:textSize="25dp" android:textStyle="bold" android:textColor="#FFFFFF" android:gravity="center"/> </LinearLayout> <LinearLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:background="#FFFFFF" android:orientation="vertical" > <LinearLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="horizontal" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Codigo: " android:textColor="#0000FF" android:textSize="20dp" /> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="" android:id="@+cat/texCodigo" android:textColor="#0000FF" android:textSize="20dp"/> </LinearLayout> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Descrição: " android:textColor="#0000FF" android:textSize="20dp" /> <EditText android:layout_width="fill_parent" android:layout_height="wrap_content" android:id="@+cat/ediDescricao"/> </LinearLayout> <LinearLayout android:id="@+id/layout1" android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="vertical"> </LinearLayout> <LinearLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginBottom="45dip"> <GridView android:id="@+id/grid1" android:layout_width="fill_parent" android:layout_height="wrap_content" android:horizontalSpacing="2dip" android:numColumns="2" android:padding="2dip" android:verticalSpacing="2dip" android:layout_marginLeft="10px">
</GridView> </LinearLayout> <LinearLayout android:layout_width="fill_parent" android:layout_height="60dip"> </LinearLayout> </LinearLayout> </ScrollView> <!-- Menu inferior --> <LinearLayout android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_gravity="bottom" android:background="#1C86EE"> <ImageButton android:id="@+cat/catSalvar" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/ic_salvar" android:visibility="visible" android:padding="0mm" android:adjustViewBounds="true"/> <ImageButton android:id="@+cat/catAlterar" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/ic_alterar" android:visibility="visible" android:padding="0mm" android:adjustViewBounds="true"/> <ImageButton android:id="@+cat/catAdd" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/ic_add" android:visibility="visible" android:padding="0mm" android:adjustViewBounds="true"/> <ImageButton android:id="@+cat/catAtualizar" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/ic_refresh" android:visibility="visible" android:padding="0mm" android:adjustViewBounds="true"/> <ImageButton android:id="@+cat/catExcluir" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/ic_excluir" android:visibility="visible" android:padding="0mm" android:adjustViewBounds="true"/> </LinearLayout> </FrameLayout> codigo java: package br. com. Categoria; import java. util. ArrayList; import br. com. ICmais. R; import android. app. Activity; import android. app. AlertDialog; import android. content. ContentValues; import android. database. Cursor; import android. database. sqlite. SQLiteDatabase; import android. graphics. Color; import android. os. Bundle; import android. widget. *; import android. widget. AdapterView. OnItemClickListener; import android. view. *; import android. view. ViewGroup. LayoutParams; public class CategoriaActivity extends Activity { TextView txcodigo; EditText Decricao; ImageButton btnSalvar, btnAtualizar, btnAdd, btnAlterar, btnExcluir; GridView grid; LinearLayout layout; //colunas int colunaId, colunaDescricao; //total de colunas int total; public int getTotal () { return total; } public void setTotal (int total ) { this. total = total; } String teste; //Banco SQLiteDatabase banco= null; Cursor c; public void onCreate (Bundle savedInstanceState ) { super. onCreate(savedInstanceState ); setContentView (R. layout. categoria); inicializaObjetos (); carregaListeners (); Carregar (); ProtecInicial (); } private void inicializaObjetos (){ txcodigo= (TextView )findViewById (R. cat. texCodigo); Decricao= (EditText ) findViewById (R. cat. ediDescricao); btnSalvar= (ImageButton ) findViewById (R. cat. catSalvar); grid= (GridView ) findViewById (R. id. grid1); layout= (LinearLayout ) findViewById (R. id. layout1); btnAtualizar= (ImageButton ) findViewById (R. cat. catAtualizar); btnAdd= (ImageButton ) findViewById (R. cat. catAdd); btnAlterar= (ImageButton ) findViewById (R. cat. catAlterar); btnExcluir= (ImageButton ) findViewById (R. cat. catExcluir); } private void carregaListeners () { btnSalvar. setOnClickListener(new View. OnClickListener() { @Override public void onClick (View v ) { ConfereDados (); }}); btnAtualizar. setOnClickListener(new View. OnClickListener() { @Override public void onClick (View v ) { VereficaGrid (); }}); btnAdd. setOnClickListener(new View. OnClickListener() { @Override public void onClick (View v ) { Limpar (); btnSalvar. setVisibility(View. VISIBLE); btnAlterar. setVisibility(View. INVISIBLE); btnExcluir. setVisibility(View. INVISIBLE); }}); btnAlterar. setOnClickListener(new View. OnClickListener() { @Override public void onClick (View v ) { AlteraRegistros (txcodigo. getText(). toString(). toUpperCase()); Limpar (); ProtecInicial (); VereficaGrid (); }}); btnExcluir. setOnClickListener(new View. OnClickListener() { @Override public void onClick (View v ) { Excluir (txcodigo. getText(). toString()); Limpar (); VereficaGrid (); ProtecInicial (); }}); grid. setOnItemClickListener(new OnItemClickListener (){ public void onItemClick (AdapterView<?> parent, View v, int posicao, long id ) { try{ if(posicao % 2 == 0) { System. out. println("numero Par:"+ "\t"+posicao ); Object cod= ((TextView ) v ). getText(); String codi= (String) cod; //chama meto codigo System. out. println("Chamos Pesquisa!"); AlteraPares (codi ); MostraRegistros (); btnAlterar. setVisibility(View. VISIBLE); btnSalvar. setVisibility(View. INVISIBLE); btnExcluir. setVisibility(View. VISIBLE); System. out. println("Descricao"+cod ); } else { System. out. println("Numero Impar:"+ "\t"+posicao ); Object descri= ((TextView ) v ). getText(); //chama metodo System. out. println("Descricao"+descri ); } }catch (Exception e ) { System. out. println("Erro posição:"+posicao ); // TODO: handle exception } } }); }//Gridpublic void ProtecInicial (){ btnSalvar. setVisibility(View. INVISIBLE); btnAlterar. setVisibility(View. INVISIBLE); btnExcluir. setVisibility(View. INVISIBLE); }//Banco de dados public void abreBanco () { try { String nmBD= "shop"; //cria banco de dados caso ele nao exista banco= openOrCreateDatabase (nmBD, MODE_WORLD_READABLE, null); //cria tabela no banco caso nao exista banco. execSQL("create table if not exists categoria " + "(id integer primary key autoincrement," + " nome text not null);"); }catch (Exception e ) { mostraCXTexto ("Criando DB. Mensagem" + e. getMessage(), "Erro"); } } public void fechaBanco () { try { banco. close(); }catch (Exception e ) { mostraCXTexto ("Fechando DB. Mensagem:" +e. getMessage(), "Erro"); } } public void insereRegbanco () { try { banco. execSQL("insert into categoria (nome) values ('"+Decricao. getText(). toString(). toUpperCase()+ "');"); mostraCXTexto ("Registro salvo com sucesso", "Aviso"); ProtecInicial (); Limpar (); VereficaGrid (); }catch (Exception e ) { mostraCXTexto ("Inserindo DB. Mensagem:" +e. getMessage(), "ERRO"); } }//fim banco de dados//Grid confere public void VereficaGrid () { int valor = 0; valor = grid. getCount(); if (valor > 0) { System. out. println("Grid possui row=" + valor ); // Carregar(); for (int i = 0; i < valor; i++ ) { grid. setAdapter(null); Carregar (); Limpar (); ProtecInicial (); } } else { Carregar (); Limpar (); ProtecInicial (); System. out. println("Grid nao possui dados row=" + valor ); } } public void Carregar () { try { ArrayList<String> x = new ArrayList<String> (); final cliAdapter a = new cliAdapter (this); layout. removeAllViews(); System. out. println("total de row na grid inicial:"+grid. getCount()); TextView text2= new TextView (this); text2. setBackgroundResource(R. color. azulMenu); text2. setTextColor(Color. WHITE); text2. setTextSize(15); text2. setLayoutParams(new LayoutParams (LayoutParams. FILL_PARENT, LayoutParams. FILL_PARENT)); text2. setText("Codigo"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+ "\t"+ "Descrição"); layout. addView(text2 ); abreBanco (); c=banco. query("categoria", new String[]{"id", "nome"}, null, null, null, null, "nome"); while(c. moveToNext()){ x. add(c. getString(0)); x. add(c. getString(1)); } a. mudartexto(x ); grid. setAdapter(a ); System. out. println("total de row na grid final="+grid. getCount()); fechaBanco (); }catch (Exception e ) { mostraCXTexto ("Grid View DB. Mensagem:" +e. getMessage(), "Erro"); } } //Inicio verifica public void ConfereDados () { int valor=Decricao. getText(). length(); if(valor>= 2){ abreBanco (); insereRegbanco (); fechaBanco (); Limpar (); } else{ mostraCXTexto ("Descrição deve conter no minimo 3 caracteres", "Aviso"); } } public boolean AlteraPares (String codigo ) { try { String _id = codigo; c= null; System. out. println("Entro na pesquisa com where:"+ "\t"+_id ); abreBanco (); c = banco. query("categoria", new String[] { "id", "nome" }, "id=?", new String[]{_id }, null, null, null); colunaId = c. getColumnIndex("id"); colunaDescricao = c. getColumnIndex("nome"); setTotal (c. getCount()); System. out. println("Retorno do cursor:"+ "\t"+colunaId+ "\t"+ "Cusor"+ "\t"+colunaDescricao+ "\t"+ "Total de retorno"+getTotal ()); if (getTotal () != 0) { c. moveToFirst(); return true; } else { return false; } } catch (Exception e ) { mostraCXTexto ("Pesquisa DB. Mensagem:" + e. getMessage(), "Erro"); fechaBanco (); return false; } } public void MostraRegistros () { txcodigo. setText(c. getString(colunaId )); Decricao. setText(c. getString(colunaDescricao )); }public void AlteraRegistros (String codigo ){ try { ContentValues valores= new ContentValues (); valores. put("nome", Decricao. getText(). toString(). toUpperCase()); banco. update("categoria", valores, "id=?", new String[]{codigo }); mostraCXTexto ("Registro alterado com sucesso", "Aviso"); }catch (Exception e ) { mostraCXTexto ("Update DB. Mensagem:" +e. getMessage(), "ERRO"); }}public void Limpar () { Decricao. setText(""); txcodigo. setText(""); }public void Excluir (String codigo ){ try { banco. delete("categoria", "id=?", new String[]{codigo }); mostraCXTexto ("Registro excluido com sucesso", "Aviso"); }catch (Exception e ) { mostraCXTexto ("Delete DB. Mensagem:" +e. getMessage(), "ERRO"); }} protected void mostraCXTexto (String msg, String titulo ) { AlertDialog. Builder builder = new AlertDialog. Builder( CategoriaActivity. this); builder. setMessage(msg ); builder. setNegativeButton("OK", null); AlertDialog dialog = builder. create(); builder. setTitle(titulo ); dialog. show(); } } classe Adapter package br. com. Categoria; import java. util. ArrayList; import android. content. Context; import android. graphics. Color; import android. view. *; import android. widget. *; public class cliAdapter extends BaseAdapter { private ArrayList<String> textos = new ArrayList<String> (); private Context mcontext; public void Teste () { System. out. print("Teste ......kkkkkkkkkk"); } public cliAdapter (Context c ){ mcontext=c; } public String retornaTexto (int position ){ String txt = textos. get(position ); return txt; } public void mudartexto (ArrayList<String> txt ){ textos=txt; } public int getCount () { // TODO Auto-generated method stub return textos. size(); } public Object getItem (int position ) { // TODO Auto-generated method stub return 1; } public long getItemId (int position ) { // TODO Auto-generated method stub return 0; } public View getView (int position, View convertView, ViewGroup parent ) { // TODO Auto-generated method stub TextView tv; if (convertView == null){ tv = new TextView (mcontext ); tv. setTextColor(Color. BLACK); tv. setLayoutParams(new GridView. LayoutParams(100, 60)); }else{ tv = (TextView ) convertView; tv. setTextColor(Color. BLACK); } tv. setText(textos. get(position ). toString()); return tv; } } img da tela com a grid falta so almentar o tamanho da grid pois so agora que vi que tava pequena!  Espero que ajude alguem!
|
| 25 Fev 2012, 11:26 |
|
 |
|
ALCEMAR
What is DDMS?
Data de registro: 13 Fev 2012, 13:27 Mensagens: 37
|
 Re: [Duvida]GridView
Como alterar tamanho deste gridview?
|
| 27 Fev 2012, 14:25 |
|
 |
|
igor.chemin
Android application
Data de registro: 22 Nov 2011, 12:58 Mensagens: 84
|
 Re: [Duvida]GridView
e so tira o ScrollView da xml que ela fica ate o menu!
|
| 27 Fev 2012, 18:39 |
|
 |
|
nero
Application Life Cycle
Data de registro: 06 Dez 2011, 17:47 Mensagens: 214
|
 Re: [Duvida]GridView
muito bom igor.chemin cara tava tentando fazer algo do tipo vlw mesmo por ter compartilhado com a gente uma duvida caso queira colocar um button do lado do valor para deletar daria certo ou teria mesmo q selecionar e apertar o button de delete ou entao selecionar e aparecer um alert  mesmo assim vlw post flw
|
| 01 Mar 2012, 08:47 |
|
 |
|
Emanuel.c
What is Android?
Data de registro: 26 Jan 2012, 00:22 Mensagens: 9
|
 Re: [Duvida]GridView
Estou com uma dúvida. Não entendo como ele pula linha nesse código do @igor.chemin. Estou fazendo uma adaptação usando e por enquanto sem usar o banco de dados, mas sempre vai criando colunas e não linha. Edit. Consegui entender bem o funcionamento. 
|
| 31 Mai 2012, 11:25 |
|
 |
|
Felipe Rocha Moraes
What is DDMS?
Data de registro: 04 Out 2011, 10:49 Mensagens: 33
|
 Re: [Duvida]GridView
Obrigado igor.chemin, por compartilhar com a gente seus códigos e pela ajuda!
|
| 08 Ago 2012, 13:33 |
|
|
|
Página 1 de 1
|
[ 16 Mensagens ] |
|
Quem está online |
Usuários vendo este fórum: abruzzi, Aderbal Nunes, adilson.afl, Adriano, AdrianoMM, Alan Unger, alexandre, Alexandre de Queiroz, Alexandrercarvalho, allone, anaguerra, andrelom, andreluzz, Androidthebest, Aniquiler, arnaldo.miranda, arquivo51, augustomig, betofigu, Biggs Darklighter, brpiassa, burujo, canaville, Captain Typho, Carla Luz, Carlos Alexandre, carlos rodrigues, carminati, Cassius, celson, Chanceler Supremo Finis Valorum, ciro, Cleiton, cleiton_maciel, darllan.marinho, David, developermaster, diegorrborges, dmd, dr.faro, DroidBot, eduzortea, eliasmachado_rj, eloilton, fabielp, fabricioLeonard, faco, fcoroa, Felipe Ferreira, felipe.cintra, flaviojps, francismarconcini, gamito, gapler, gedoor, gfgodoy, Gomes, Google Desktop, hebert, henrique.cardoso, ismaels, ismavolk, jgfelix, JMurray, Jorge Machin, Juninhooooo, jzaires, klassmann, lafamac, leandroviana, leeeeooooooo, leofernandesmo, linukiss, lisbao, lkunta, luciocamilo, luizneto79, MARCIOHG, mateusff, mendes_lu, Meticore, mlemos, MpassosT, mvoto, nandokanarski, neosun, Newton Barbosa, nfaria, nglaubervasc, nirvana, otium, otpor, pabarbosa, paulo.weber, pchofard, peixe, pemam.com.br, peterson.bah, pfsmorigo, PicsearchDroid, poponeis, Portal Android, Qui-Gon Jinn, regisjj, renatodondoni, renegheller, retardad0, rguadagnini, ricardo_listadelphi, rodrigoinnova, Roll, Rubens Prates, sandro, ScoobyGB, Shaman286, shibutani, sjta, suissa, teamamus, Telekom [Bot], Thiago, thiagoalgo, tnarnold, Topeca, W3 [Sitesearch], weber, weverton, wil, wilson.slima, wingdoido, Wookiees, Yuri, zorieuq e 1 visitante |
|
Você não pode criar novos tópicos neste fórum Você não pode responder tópicos neste fórum Você não pode editar suas mensagens neste fórum Você não pode excluir suas mensagens neste fórum Você não pode enviar anexos neste fórum
|
|