2016-10-29 2 views
0

werde ich direkt in mein Problem bekommen; hier ist das, was ich die ProgressDialog Box formatiert werden soll (dies ist ein AlertDialog):Android - ProgressDialog mit einem Knopf hat zu viel Leerraum

Und das ist mein ProgressDialog ohne Knopf:

Erstellt mit:

dialog = new ProgressDialog(MainActivity.this); 
dialog.setProgressStyle(ProgressDialog.STYLE_SPINNER); 
dialog.setMessage("Gathering all sent SMS messages..."); 
dialog.setIndeterminate(true); 
dialog.setCanceledOnTouchOutside(false); 
dialog.setTitle("Gathering..."); 
dialog.setCancelable(false); 

dialog.show(); 

Allerdings, wenn ich einen Knopf wie folgt setzen:

dialog.setButton(DialogInterface.BUTTON_NEGATIVE, "Cancel", new DialogInterface.OnClickListener() { 
     @Override 
     public void onClick(DialogInterface dialog, int which) { 
    //do cancel stuff 
     } 
    }); 

Es nimmt viel mehr Leerzeichen als es sollte, und mehr als ein normaler Dialog.

So weiß jemand, wie eine Taste, um eine ProgressDialog hinzuzufügen und nicht eine Reihe von Leerzeichen wie diese haben? Danke im Voraus!

Antwort

1

Es hat nichts mit Ihrem Design oder Code zu tun. Es geht um Googles Design. Wenn Sie die Designseite für Dialoge here überprüfen. Sie können sehen, dass jeder Dialog mit einer Schaltfläche nach dem Inhalt den gleichen Abstand hat.

Aber Sie können versuchen, das benutzerdefinierte Dialogfeld zu erstellen und die Tasten selbst erstellen. Auf diese Weise können Sie Ihre Tasten überall platzieren.

  1. Erstellen Sie Ihre xml Datei unter res/layouts/xml Verzeichnis.

  2. Erstellen Sie Ihren Dialog wie folgt aus:

final Dialog dialog = new Dialog(context); dialog.setContentView(R.layout.custom);