Android - ukázat neurčitý ProgressBar bez dialogu

hlasů
19

Chci, aby se moje ProgressBar ve středu obrazovky, když se zpracování se děje na stisknutí tlačítka. Ale já chci ProgressBar bez dialogového okna ..

Existuje nějaký způsob, jak to mohu udělat?

Položena 01/04/2009 v 07:23
zdroj uživatelem
V jiných jazycích...                            


5 odpovědí

hlasů
23

Je plně vysvětlena v ApiDemos uvnitř SDK. V příkladu, který chcete se jmenuje: ProgressBar3.java a lze je nalézt v \ ApiDemos \ src \ com \ příklad \ android \ API \ výhled \

Také, pokud chcete odstranit hranice dialogového okna tak, že pouze indikátor průběhu se objeví můžete definovat dialog sám jako transparentní zobrazit / překrytí (je to vysvětleno v příkladech stejně).

Odpovězeno 01/04/2009 v 11:22
zdroj uživatelem

hlasů
22

Pokud budete potřebovat žádný dialog, stačí dát Ukazatel v rozvržení jako každý jiný pohled položky a nastavit viditelnost na ‚neviditelné‘, nebo dokonce ‚GONE‘ ve výchozím nastavení.

Pak už stačí jen ukázat, že vždy, když je potřeba, aby změnou to ‚visible‘ pomocí setVisibility v kódu, a znovu skrýt, když je úkol provést tím, že ‚neviditelné‘ nebo ‚PRYČ‘ znovu.

např

MyTask {

// get handle on ProgressBar ViewItem defined in XML (id:progressBar)

ProgressBar progressBar = findViewById(R.id.progressBar);


//starting task, show progress bar

progressBar.setVisibility(View.VISIBLE);


// Do some stuff... 


//task done, hide it again

progressBar.setVisibility(View.GONE);

}

Jedná se o jednoduchou verzi, vše provedeno v UI vlákno, ale to by mělo být snadno přizpůsobit, pokud používáte asynchronní manipulátory úkolu nebo nití. Jen ukázat, skrýt, a po nějaké aktualizace k dialogu, když se v UI vlákno, a dělat svou dlouhotrvající úlohy na pozadí.

Odpovězeno 03/05/2011 v 02:07
zdroj uživatelem

hlasů
3

@reflog: To není to, co je potřeba myslím.

@lostInTransit:

Správný způsob, jak toho dosáhnout, je následující:

  1. Vytvořit ur vlastní dialog
  2. Dát progress bar jako jediný pohled na dialogu
  3. Nastavte dialogové okno pozadí průhledné
  4. Zobrazit dialogové okno.

A je to. Pracuje pro mě na zařízeních s 1,5 až 2,1. Nezkoušel na 2,2.

-Yogesh

Odpovězeno 09/09/2010 v 08:35
zdroj uživatelem

hlasů
2

Odpověď by @Jesse Finnerty vyřešit můj problém. to, co jsem udělal, bylo:

private ProgressBar mprogressBar;

Vnitřní OnCreate (), stejně jako jiné tlačítka a textviews já, mprogressBar = (ProgressBar) findViewById (R.id.progressBar);

Pak v okamžiku, chci kolovrátku se objevit i dát povel

mprogressBar.setVisibility(View.VISIBLE);

v místě, kde chci, aby to zmizí.

mprogressBar.setVisibility(View.INVISIBLE);

To je pod spínačem ve skutečnosti. takže jak se uvádí v mém změně programu, zobrazí se indikátor průběhu a zmizí

Odpovězeno 25/06/2011 v 15:59
zdroj uživatelem

hlasů
1

Tam je skvělým příkladem toho, aby to, co Yogesh naznačuje na adrese:

Jak do centra indikátor průběhu v ProgressDialog snadno (pokud není název / text prošel podél)

Zásluhu na Macarse pro vyvěšením.

Odpovězeno 06/10/2010 v 23:03
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more