Autore Topic: Gerarchia delle viste di un AlertDialog  (Letto 348 volte)

Offline Ohmnibus

  • Utente senior
  • ****
  • Post: 773
  • Respect: +161
    • Github
    • Google+
    • @ohmnibus
    • Mostra profilo
    • Lords of Knowledge GdR
  • Dispositivo Android:
    Huawei P9 Lite
  • Play Store ID:
    Ohmnibus
  • Sistema operativo:
    Windows 7 x64
Gerarchia delle viste di un AlertDialog
« il: 26 Agosto 2014, 11:56:55 CEST »
0
Salve,
avrei la necessità di aggiungere in un AlertDialog una View sotto la barra dei tasti di conferma/annulla (BUTTON_POSITIVE e BUTTON_NEGATIVE).

In pratica vorrei far apparire una KeyboardView all'interno dell'AlertDialog.

Se preparo un mio layout con la suddetta tastiera ed uso la setView dell'AlertDialog la tastiera appare sopra i tasti Conferma/Annulla, ed oltre ad essere brutto esteticamente lascia pochissimo spazio alle EditText.

Ad ora ho trovato una soluzione molto "sporca" che probabilmente non funziona per tutte le versioni di android: partendo da un Button (Button b = dialog.getButton(BUTTON_POSITIVE)) risalgo la gerarchia (b.getParent()) fino a trovare il primo elemento di tipo LinearLayout con orientamento verticale. A questo elemento aggiungo la mia KeyboardView.

Anche se funziona, come dicevo la soluzione è molto sporca: sto andando a cercare la presenza di un LinearLayout che potrebbe non esistere in alcune versioni di android perché dipende da come la struttura degli AlertDialog è gestita dal framework.

Esiste un sistema "pulito" per accedere alla radice dell'AlertDialog?

O, in alternativa, esiste qualche altro sistema per aggiungere viste sotto la barra dei tasti di Conferma/Annulla degli AlertDialog?

Grazie in anticipo.
Ohmnibus
Le mie app su Play Store

È stata trovata una soluzione al tuo problema? Evidenzia il post più utile premendo . È un ottimo modo per ringraziare chi ti ha aiutato.