Obs: SessionActivity é a minha, se estiver usando activitys normais normal é só Activity mesmo.
Em 25 de setembro de 2012 12:12, Lucas de Jesus Matias <lucas.matias.87@gmail.com> escreveu:
Felippe, já está no exemplo, outra coisa que vi, não pode usar .Show dentro do doInBackground, por ser uma thread diferente da thread da UI.public class ChecarSessaoTask extends AsyncTask<String, Void, Boolean>{private ProgressDialog progress;private SessionActivity activity;public ChecarSessaoTask(SessionActivity activity) {this.activity = activity;}quando precisar do context é só usar:ex:Toast.makeText(activity, "mensagem", Toast.LENGTH_LONG).show();
Em 25 de setembro de 2012 12:00, Felippe dos Santos Ferreira <felippenasuacasa@gmail.com> escreveu:
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_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
}
--
--






0 comentários:
Postar um comentário