Ver mensagens sem resposta | Ver tópicos ativos Hoje é 01 Abr 2020, 16:43



Este tópico está trancado, você não pode editar mensagens ou enviar respostas.  [ 6 Mensagens ] 
 [RESOLVIDO]Alternar texto no ProgressDialog 
Autor Mensagem
Anatomy of an App
Anatomy of an App

Data de registro: 12 Mar 2013, 01:37
Mensagens: 186
Mensagem [RESOLVIDO]Alternar texto no ProgressDialog
Pessoal, tenho essa Activity que mostra um ProgressDialog.

package novo.progress;

import android.app.Activity;
import android.os.Bundle;
import android.app.ProgressDialog;
import android.os.Handler;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Toast;

public class MainActivity extends Activity {

    Button btn;
    ProgressThread progressT;
    ProgressDialog progressD;
    Handler mHandler = new Handler();


    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        btn = (Button) findViewById(R.id.progressDialog);

        btn.setOnClickListener(new OnClickListener() {
                public void onClick(View v) {
                    progressThread();
                } });
    }

    private void progressThread() {
        progressD = new ProgressDialog(MainActivity.this);
        progressD.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
        progressD.setMessage("Compilando...");
        progressD.setTitle("Carregando...");
        progressD.setCancelable(false);
        progressD.show();

        progressT = new ProgressThread();
        progressT.start();
    }

    private class ProgressThread extends Thread {

        final static int STATE_DONE = 0;
        final static int STATE_RUNNING = 1;
        private volatile int mState;
        volatile int compilar;

        ProgressThread() {
            mState = STATE_RUNNING;
            compilar = 0;
        }

        public void run() {

            do {
                compilar++;

                mHandler.post(new Runnable() {

                        @Override

                        public void run() {

                            progressD.setProgress(compilar);
                        } });

                if (compilar>=100) {
                    mState = STATE_DONE;

                    Thread.currentThread().interrupt();
                } try {
                    Thread.sleep(100);
                } catch (InterruptedException e) { }
            } while(isRunning());

            mHandler.post(new Runnable() {

                    @Override
                    public void run() {

                        progressD.dismiss();

                        Toast.makeText(MainActivity.this, "App criado com sucesso!", Toast.LENGTH_SHORT).show();
                    } }); }

        public boolean isRunning() {
            return mState == STATE_RUNNING;
        } } }


A parte

progressD.setMessage("Compilando...");


É responsável por mostrar o texto acima do Progress enquanto carrega até o 100.

Minha pergunta é:

Como faço para alternar o texto durante o Progress?

Ex: Quando chegar até 15% muda para outro texto, aos 30% muda novamente e assim por diante.

Desde já agradeço!!! XD XD XD


Editado pela última vez por uchiha itachi-san em 18 Jun 2013, 12:01, num total de 1 vezes



16 Jun 2013, 23:58
Perfil
Google employee
Google employee

Data de registro: 28 Jan 2011, 11:42
Mensagens: 1037
Localização: Rio Grande do Sul
Mensagem Re: Alternar texto no ProgressDialog
Olá,

Para mudar o texto do progressDialog é só utilizar o progressD.setMessage(message);

Não sei se tua pergunta foi essa... uaheuaheuahe


17 Jun 2013, 10:51
Perfil
Anatomy of an App
Anatomy of an App

Data de registro: 12 Mar 2013, 01:37
Mensagens: 186
Mensagem Re: Alternar texto no ProgressDialog
O que eu estou querendo fazer é com que o texto fique mudando durante o progress.

ex: Quando o progress chegar em 15% o texto "Compilando..." mude para outro texto. Quando chegar em 40% mude o texto novamente e assim por diante, até chegar ao 100%.


17 Jun 2013, 21:32
Perfil
Google employee
Google employee

Data de registro: 28 Jan 2011, 11:42
Mensagens: 1037
Localização: Rio Grande do Sul
Mensagem Re: Alternar texto no ProgressDialog
é só tu setar a mensagem no tempo que tu quiseres...

Dá uma olhada:


private class ProgressThread extends Thread {

        final static int STATE_DONE = 0;
        final static int STATE_RUNNING = 1;
        private volatile int mState;
        volatile int compilar;

        ProgressThread() {
            mState = STATE_RUNNING;
            compilar = 0;
        }

        public void run() {

            do {
                compilar++;

                mHandler.post(new Runnable() {

                    @Override
                    public void run() {

                        progressD.setProgress(compilar);
                    }
                });
               
                if (compilar >= 15 && compilar <= 40) {
                    mHandler.post(new Runnable() {

                        @Override
                        public void run() {

                            progressD.setMessage("Instalando...");
                        }
                    });
                } else {
                    if (compilar > 40 && compilar <= 100) {
                        mHandler.post(new Runnable() {

                            @Override
                            public void run() {

                                progressD.setMessage("Configurando...");
                            }
                        });
                    }
                }

                if (compilar >= 100) {
                    mState = STATE_DONE;

                    Thread.currentThread().interrupt();
                }
                try {
                    Thread.sleep(100);
                } catch (InterruptedException e) {
                }
            } while (isRunning());

            mHandler.post(new Runnable() {

                @Override
                public void run() {

                    progressD.dismiss();

                    Toast.makeText(MainActivity.this, "App criado com sucesso!", Toast.LENGTH_SHORT).show();
                }
            });
        }

        public boolean isRunning() {
            return mState == STATE_RUNNING;
        }
    }
 


Abraço


18 Jun 2013, 11:43
Perfil
Anatomy of an App
Anatomy of an App

Data de registro: 12 Mar 2013, 01:37
Mensagens: 186
Mensagem Re: Alternar texto no ProgressDialog
Vou tentar aki.


18 Jun 2013, 11:53
Perfil
Anatomy of an App
Anatomy of an App

Data de registro: 12 Mar 2013, 01:37
Mensagens: 186
Mensagem Re: Alternar texto no ProgressDialog
Valeu, agora sim deu certo!!!!


18 Jun 2013, 12:00
Perfil
Mostrar mensagens anteriores:  Organizar por  
Este tópico está trancado, você não pode editar mensagens ou enviar respostas.   [ 6 Mensagens ] 

Quem está online

Usuários vendo este fórum: (_FM_), afpcp, alex.abrantes, Alexandre de Queiroz, alexandrefett, alexvbh, allart, andrewort, Androidthebest, Aparec, arkanjo, Beru Lars, BloggerCaOS, blurkness, BornSlip, bruno.abd, buccalon, C-3PO, Carla Luz, carminati, cesao, cesschneider, Chewbacca, dbuarque, deborazb, diegorrborges, dobau, edson dias de gusmao, EduardoYC, eliasmachado_rj, erissi, erosvaldo, fabrizior, felipedsilva, ffabiano, Filipe larizzatti, flaviohssantos, fredjpa, freina, gabrielatme, gfgodoy, Google Android, HanNiBaLSeTDf, hellbest, henrique.cardoso, hopper.frf, HyagoRules, ICCrawler - ICjobs, interservic, ixian, Javanês, jeanbr07, jhou, Joessi2007, jonasminas, Jorge Machin, juliana_costa, juliano, Juniorvs, kecyobarros, leofernandesmo, leonardodamata, lucastgomes, Luna, Machado000, malucouto, Marcelo, MarceloLuz, marcos_trb, marcow, marianatallas, Marini, mateusff, MauNunes, mauriciomag, mlemos, Mvitor, nakahara, nardosnt, neviim, Nidio Dolfini, nishimura.ichigo, nobrejack, nq6, nullPointer, oliveiramc, paulabr, phsantos, Rafael, Rafael Felix, ramonsa, renan.fernandes, renanpl, renegheller, ricdigital, Roberto, rodrigo_mg, rogeriokta, Samantha, schiroky, siker C3PO, suportecr, tassiovirginio, thosjanas, tnarnold, Vania, Velhinho, VIEIRIX, Vinicius, viniciusluiz, weber, WiseNut, xGambit, xikin, XPTO, YaCy, Yuri, zorba e 5 visitantes


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

Procurar por:

© 2007 - 2016 Portal Android - Comunidade de Desenvolvedores Android

Estamos no Linkedin    Siga-nos no twitter


Powered by phpBB - Hospedado por Bemobi