Wie kann ich diese optimieren, dialog-code für Android?

Möchte ich einen dialog mit 3 Ansichten
1. Titel mit schwarzem hintergrund
2. einige body-text auf weißem hintergrund
3. eine Linie mit 2 Knöpfen, mit grauem hintergrund.

Das problem ist, dass ich will, dass die hintergrund-Farbe des Körper, WEIß zu sein, aber auch meine Ansicht hat festlegen Hintergrundfarbe auf WEIß, scheint es einige Ränder am oberen und unteren Ende des Körpers, hat eine andere Hintergrundfarbe.

       TextView title = new TextView(this);
    title.setText("This is my title");
    title.setBackgroundColor(Color.BLACK);
    title.setPadding(10, 10, 10,10);
    title.setGravity(Gravity.CENTER);
    title.setTextColor(Color.WHITE);
    title.setTextSize(20);

    TextView view = new TextView(this);
    view.setText("Lorem Ipsum blabla bla \n more bla bla aha hhahah blablalblal.");
    view.setBackgroundColor(Color.WHITE);

    AlertDialog.Builder builder = new AlertDialog.Builder(this);
    builder.setCancelable(false);
    builder.setCustomTitle(title);
    builder.setView(view);
    builder.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
               public void onClick(DialogInterface dialog, int id) {
                    Bingo.this.finish();
               }
           })
           .setNegativeButton("No", new DialogInterface.OnClickListener() {
               public void onClick(DialogInterface dialog, int id) {
                    dialog.cancel();
               }
           });
    AlertDialog alert = builder.create();
    alert.show();
    ((View)view.getParent()).setBackgroundColor(Color.WHITE);  //<-- UGLY fix to avoid stupid margins at top and bottom of the body...

Irgendwelche Ideen, wie kann ich entfernen Sie die Letzte Zeile des Codes das "HÄSSLICHE fix" ?

  • Nur eine vorläufige Frage. Aus irgendeinem Grund nicht die Verwendung von XML-Ansichten ?
  • der Titel ist eine benutzerdefinierte Ansicht, weil ich nicht wollen, dass jedes Symbol, die benutzerdefinierte Meldung anzeigen, weil ich will die urls in den text, so brauche ich, um die Ansicht einzustellen.setAutoLinkMask(Linkify.ALLE) zu tun, weil die nicht unterstützt werden, indem der Bauherr. Wie auch immer, diese setAutoLinkMask hat nicht funktioniert, wie ich annahm, für einige strage Grund, so hatte ich die Verwendung eines aufgeblasenen ansehen.inflate(R. layout.my_message_view, null), um das autolinking Arbeit... Geee... warum muss alles so schwierig sein...
Schreibe einen Kommentar