Tecnologia do Blogger.
RSS

[androidbrasil-dev] Problema com AsyncTask, minha lista não aparece

galera fiz um app tudo certinho na versão 2,2
ai a galera do trampo disse "Boa mlk, muito show, coloca nu tablet pra gente ver roda, e coloca nu cel do diretor pra ele testa na casa dele"
Ai aconteceu o problema, em versões acima da 2,3 ele num roda, da erro...
ai lendo a documentação do android vi que precisa de um tal de AsyncTask,
eu fiz mais a lista aparece em branco.
poderiam mi dar umas dicas de como fazer funfar...

segue o codigo:

public void onCreate(Bundle savedInstanceState) {

      new minhaListaInicial();


}

public class minhaListaInicial extends AsyncTask <Void, Void, Void> {  //acho que estou errando aqui
           
        protected void onPostExecute(String result) {    
        }

        @Override
        protected void onPreExecute() {
        }

        @Override
        protected void onProgressUpdate(Void... values) {
        }

        @Override
        protected Void doInBackground(Void... params) {
            // TODO Auto-generated method stub
            try {
                String url = "http://www.xxx.com.br/android/listapaginabuscames.php";
                String respostaRetornada = null;
                respostaRetornada = Conexao.executaHttpGet(url);
                String resposta = respostaRetornada.toString();
                char separador = '#';
                int contaUsuarios = 0;
                for (int i = 0; i < resposta.length(); i++)
                    if (separador == resposta.charAt(i))
                        contaUsuarios++;

                ListaNoticiasMes = new String[contaUsuarios];

                char caracter_lido = resposta.charAt(0);
                String nome = "";
                for (int i = 0; caracter_lido != '^'; i++) {
                    caracter_lido = resposta.charAt(i);
                    if (caracter_lido != '#') {
                        nome += (char) caracter_lido;
                    } else {
                        ListaNoticiasMes[posicao] = "" + nome;
                        posicao++;
                        nome = "";
                    }
                }
               
                ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(TelaBuscarExibeNoticias.this, android.R.layout.simple_list_item_1, ListaNoticiasMes);
                listanoticiabusca.setAdapter(arrayAdapter);
               
                listanoticiabusca.setOnItemClickListener(new OnItemClickListener() {
                    public void onItemClick(AdapterView<?> parentView,
                            View selectedItemView, int position, long id) {
                        // TODO Auto-generated method stub
                        Toast.makeText(getApplication(),
                                ((TextView) selectedItemView).getText(),
                                Toast.LENGTH_LONG).show();
                        Intent prox = new Intent(TelaBuscarExibeNoticias.this,
                                NoticiaDetalhada.class);
                        prox.putExtra("NOMES", ((TextView) selectedItemView).getText());
                        startActivity(prox);
                    }
                });    
            } catch (Exception erro1) {
                Mensagens("Impossivel exibir lista ", "Verifique sua internet "
                        + erro1);
               
                String [] errorlista = {"Não foi possiver exibir a lista de noticias, verifique sua internet"};
               
                ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(TelaBuscarExibeNoticias.this, android.R.layout.simple_list_item_1, errorlista);
                listanoticiabusca.setAdapter(arrayAdapter);
            }
            return null; // acho que deveria retornar algo
        }

--
 
 

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

0 comentários:

Postar um comentário