aparece só a lista do catch
tipo uma lista de erro já é um bom passo...
mais preciso exibir a lista do try
coloquei meu codigo dentro do : onPreExecute()
fiz assim
declarei a classe la no contrutor
protected minhaListaInicial minhalista;
ai dentro do on create coloquei;
minhalista = new minhaListaInicial();
minhalista.execute();
amigo esse negico de chama a actv poderia demostrar pra mim, sempre faço assim...
num sei fazer de outra forma.
velew
Em terça-feira, 25 de setembro de 2012 11h27min54s UTC-3, Lucas Matias escreveu:
Obs: Inicialize a activity via construtor, realmente como você fez uma classe interna eu não sei se dá problema de chamar ela assim, mas acho que pode dar.--Em 25 de setembro de 2012 11:26, Lucas de Jesus Matias <lucas.m...@gmail.com> escreveu:
Acho que de todo jeito vai pra lá, você só tem que verificar se o resultado é nulo ou não.acho que não tem problema utilizar try catch.Ah, outra coisa, você está chamando a activity de forma estática, acho que isso dá problema.Tenta passar ela por parametro (ou passa o Context que é uma superclasse da activity) ai a partir dessa activity você passa por exemplo no arrayadapter:ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(activity , android.R.layout.simple_list_item_1 , errorlista);
Em 25 de setembro de 2012 11:23, Felippe dos Santos Ferreira <felippen...@gmail.com> escreveu:
manu outra coisa...
mais e meus trys catch...
eu retiro...
tipo executa no doInBackground
se der certo vai pro OnPostExecute
se der errado vai pra onde ?
é isso ?
Em terça-feira, 25 de setembro de 2012 11h00min17s UTC-3, Lucas Matias escreveu:--Se não me engano o adapter você tem que por no OnPostExecute,Olha só o meu exemplo:Também comecei a aprender sobre isso ontem, mas pelo que entendi, o doInBackground fica só a parte pesada, e joga o resultado para resolver o resto no OnPostExecute, me corrijam se estiver errado.public class ChecarSessaoTask extends AsyncTask<String, Void, Boolean>{private ProgressDialog progress;private SessionActivity activity;public ChecarSessaoTask(SessionActivity activity) { this.activity = activity;}@Overrideprotected void onPreExecute() {progress = new ProgressDialog(activity);progress.setMessage("Carregando..."); progress.show();}@Overrideprotected Boolean doInBackground(String... params) {return Sessao.checarSessaoExterna(activity); }@Overrideprotected void onPostExecute(Boolean resultado) {progress.dismiss();AplicacaoCMA app = activity.app;if(!resultado) {new RecarregaUsuarioTask(activity).execute(); } else {activity.geraContador();}}}Em 25 de setembro de 2012 10:53, Felippe dos Santos Ferreira <felippen...@gmail.com> escreveu:
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_i tem_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_i tem_1 , errorlista);
listanoticiabusca.setAdapter(arrayAdapter);
}
return null; // acho que deveria retornar algo
}
--






0 comentários:
Postar um comentário