Desidero mostrare ProgressDialog
quando faccio clic sul pulsante Accedi e ci vuole tempo per passare a un'altra pagina. Come posso fare questo?Come visualizzare la finestra di dialogo di avanzamento in Android?
risposta
È meglio provare con AsyncTask
codice di esempio -
private class YourAsyncTask extends AsyncTask<Void, Void, Void> {
private ProgressDialog dialog;
public YourAsyncTask(MyMainActivity activity) {
dialog = new ProgressDialog(activity);
}
@Override
protected void onPreExecute() {
dialog.setMessage("Doing something, please wait.");
dialog.show();
}
protected Void doInBackground(Void... args) {
// do background work here
return null;
}
protected void onPostExecute(Void result) {
// do UI work here
if (dialog.isShowing()) {
dialog.dismiss();
}
}
}
Utilizzare il codice di cui sopra nella vostra Entrata tasto Attività. E, fare le cose in doInBackground
e onPostExecute
Aggiornamento:
ProgressDialog
è integrato con AsyncTask
come lei ha detto il vostro compito richiede tempo per l'elaborazione.
Aggiornamento:
ProgressDialog
classe è stata sconsigliata a partire dal API 26
Voglio mostrare la finestra di avanzamento, non voglio usare AsyncTask penso – Hamza
@AmeerHamza Aggiornamento della risposta. – Praveenkumar
bene lo sveglierò – Hamza
ProgressDialog pd = new ProgressDialog(yourActivity.this);
pd.setMessage("loading");
pd.show();
E questo è tutto ciò che serve.
ProgressDialog pd = new ProgressDialog (yourActivity.this); pd.setMessage ("caricamento"); pd.show(); ora mostra tutto. Cosa fare. –
Dovrai utilizzare la tua attività corrente anziché la tua attività. – Jave
sto usando la mia attività .. –
ProgressDialog dialog =
ProgressDialog.show(yourActivity.this, "", "Please Wait...");
Punto uno si dovrebbe ricordare quando si tratta di Progress dialog è che si dovrebbe eseguire in un thread separato. Se lo esegui nel tuo thread dell'interfaccia utente, non vedrai alcuna finestra di dialogo.
Se si è nuovi a Android Threading, è necessario conoscere AsyncTask. Che ti aiuta ad implementare un painless Threads.
codice di esempio
private class CheckTypesTask extends AsyncTask<Void, Void, Void>{
ProgressDialog asyncDialog = new ProgressDialog(IncidentFormActivity.this);
String typeStatus;
@Override
protected void onPreExecute() {
//set message of the dialog
asyncDialog.setMessage(getString(R.string.loadingtype));
//show dialog
asyncDialog.show();
super.onPreExecute();
}
@Override
protected Void doInBackground(Void... arg0) {
//don't touch dialog here it'll break the application
//do some lengthy stuff like calling login webservice
return null;
}
@Override
protected void onPostExecute(Void result) {
//hide the dialog
asyncDialog.dismiss();
super.onPostExecute(result);
}
}
Buona fortuna.
La tua nota che "la finestra di dialogo di avanzamento non funzionerà sul thread principale dell'interfaccia utente" è stata la mia giornata. Grazie. –
OnPreExecute e onPostExecute vengono eseguiti nella thread principale. E stai avviando e interrompendo la finestra di dialogo del progresso dal thread principale. – runios
final ProgressDialog progDailog = ProgressDialog.show(Inishlog.this, contentTitle, "even geduld aub....", true);//please wait....
final Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {
Barcode_edit.setText("");
showAlert("Product detail saved.");
}
};
new Thread() {
public void run() {
try {
} catch (Exception e) {
}
handler.sendEmptyMessage(0);
progDailog.dismiss();
}
}.start();
utilizza questo codice che ritengo utile per il tuo requisito ... dammi il tasso .. – KeTaN
Questo è il buon modo per utilizzare finestra
private class YourAsyncTask extends AsyncTask<Void, Void, Void> {
ProgressDialog dialog = new ProgressDialog(IncidentFormActivity.this);
@Override
protected void onPreExecute() {
//set message of the dialog
dialog.setMessage("Loading...");
//show dialog
dialog.show();
super.onPreExecute();
}
protected Void doInBackground(Void... args) {
// do background work here
return null;
}
protected void onPostExecute(Void result) {
// do UI work here
if(dialog != null && dialog.isShowing()){
dialog.dismiss()
}
}
}
Dichiarare il vostro finestra di avanzamento:
ProgressDialog progressDialog;
Per avviare la finestra di avanzamento:
progressDialog = ProgressDialog.show(this, "","Please Wait...", true);
Per chiudere la Finestra di dialogo di avanzamento:
progressDialog.dismiss();
ProgressDialog pd = new ProgressDialog(yourActivity.this);
pd.show();
Mentre questo fornisce una risposta diretta alla domanda, questo in genere sarebbe considerato di bassa qualità su Stack Overflow perché non fornisce alcun contesto o spiegazione. Si prega di considerare l'espansione della risposta. –
Fase 1: Creata un file XML
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<Button
android:id="@+id/btnProgress"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="Progress Dialog"/>
</LinearLayout>
Passaggio 2: Creare un SampleActivity.java
package com.scancode.acutesoft.telephonymanagerapp;
import android.app.Activity;
import android.app.ProgressDialog;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
public class SampleActivity extends Activity implements View.OnClickListener {
Button btnProgress;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btnProgress = (Button) findViewById(R.id.btnProgress);
btnProgress.setOnClickListener(this);
}
@Override
public void onClick(View v) {
final ProgressDialog progressDialog = new ProgressDialog(SampleActivity.this);
progressDialog.setMessage("Please wait data is Processing");
progressDialog.show();
// After 2 Seconds i dismiss progress Dialog
new Thread(){
@Override
public void run() {
super.run();
try {
Thread.sleep(2000);
if (progressDialog.isShowing())
progressDialog.dismiss();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}.start();
}
}
Per utilizzare ProgressDialog
utilizzare il codice qui sotto
ProgressDialog progressdialog = new ProgressDialog(CurrentActivity.this);
progressdialog.setMessage("Please Wait....");
Per avviare l'uso ProgressDialog
progressdialog.show();
progressdialog.setcancelable(false);
viene utilizzato in modo che ProgressDialog
non possono essere cancellati fino a quando il lavoro è fatto.
Per interrompere l'ProgressDialog
uso di questo codice (quando il lavoro è finito):
progressdialog.dismiss();`
quando si chiama in OnCreate()
new LoginAsyncTask().execute();
Ecco come utilizzare nel flusso ..
ProgressDialog progressDialog;
private class LoginAsyncTask extends AsyncTask<Void, Void, Void> {
@Override
protected void onPreExecute() {
progressDialog= new ProgressDialog(MainActivity.this);
progressDialog.setMessage("Please wait...");
progressDialog.show();
super.onPreExecute();
}
protected Void doInBackground(Void... args) {
// Parsse response data
return null;
}
protected void onPostExecute(Void result) {
if (progressDialog.isShowing())
progressDialog.dismiss();
//move activity
super.onPostExecute(result);
}
}
final ProgressDialog loadingDialog = ProgressDialog.show(context,
"Fetching BloodBank List","Please wait...",false,false); // for showing the
// dialog where context is the current context, next field is title followed by
// message to be shown to the user and in the end intermediate field
loadingDialog.dismiss();// for dismissing the dialog
per m Informazioni minerale Android - What is difference between progressDialog.show() and ProgressDialog.show()?
ProgressDialog è ora ufficialmente deprecato in Android O. Io uso DelayedProgressDialog da https://github.com/Q115/DelayedProgressDialog per ottenere il lavoro fatto.
Usage:
DelayedProgressDialog progressDialog = new DelayedProgressDialog();
progressDialog.show(getSupportFragmentManager(), "tag");
ProgressDialog è deprecato dal API 26
ancora si può usare questo:
public void button_click(View view)
{
final ProgressDialog progressDialog = ProgressDialog.show(Login.this,"Please Wait","Processing...",true);
}
- 1. Finestra di dialogo Avanzamento posizionamento Android o Finestra di dialogo Avanzamento personalizzato
- 2. Finestra di dialogo di avanzamento di Android
- 3. Android: Modifica avanzamento Finestra di dialogo
- 4. Android: la finestra di dialogo di avanzamento non gira spinning
- 5. Come visualizzare una finestra di dialogo di avanzamento mentre la pagina HTML viene caricata in WebView
- 6. Finestra di dialogo di avanzamento all'apertura dell'attività
- 7. Android: barra di avanzamento orizzontale (finestra di dialogo) indeterminata
- 8. Imposta avanzamento della finestra di dialogo
- 9. IME per Android: come visualizzare una finestra di dialogo popup?
- 10. Imposta finestra di dialogo timeout in Android?
- 11. Come posso visualizzare la finestra di dialogo jquery test unitario?
- 12. attività come finestra di dialogo in Android
- 13. Finestra di dialogo di avanzamento modale di blocco non bloccante
- 14. Come modificare la posizione di una finestra di dialogo di avanzamento?
- 15. Finestra di dialogo di avanzamento all'avvio di una nuova attività
- 16. Finestra di dialogo testo di input Android
- 17. Android - mostra una barra di avanzamento indeterminata senza la finestra di dialogo
- 18. Come impostare l'icona per la finestra di dialogo in Android
- 19. Larghezza finestra di dialogo Android
- 20. Come posso visualizzare una finestra di dialogo prima di inviarla?
- 21. Come gestire il "pulsante Indietro" su Android quando viene visualizzata una finestra di dialogo di avanzamento
- 22. Finestra di dialogo degli avvisi in Android
- 23. Crea attività Android come finestra di dialogo
- 24. Android - MediaController di VideoView all'interno della finestra di dialogo appare dietro la finestra di dialogo
- 25. Come faccio a visualizzare una finestra di dialogo in Android senza un contesto di attività?
- 26. Come visualizzare l'attività nella finestra di dialogo "Scegli file"?
- 27. dialogo di avanzamento con asynctask
- 28. android - Come mostrare la finestra di dialogo al termine dell'attività
- 29. sfondo finestra di dialogo personalizzata Android
- 30. Come modificare il colore dietro la finestra di dialogo Android
http://developer.android.com/guide/topics/ui /dialogs.html –