Essa deve ser uma tarefa simples, mas, por algum motivo, posso encontrar uma maneira de definir o título de um DialogFragment . (Estou configurando o conteúdo da caixa de diálogo usando onCreateView
sobrecarga).
O estilo padrão deixa um lugar para o título, mas não consigo encontrar nenhum método na DialogFragment
classe para defini-lo.
De alguma forma, o título é definido magicamente quando o onCreateDialog
método é usado para definir o conteúdo, então, eu me pergunto se isso é por design ou se há um truque especial para defini-lo ao usar a onCreateView
sobrecarga.
Substituir
onCreateDialog
e definir o título diretamente noDialog
trabalho? Como isso:fonte
A resposta de Jason costumava funcionar para mim, mas agora precisa das seguintes adições para que o título seja exibido.
Em primeiro lugar, no
onCreate()
método do seu MyDialogFragment , adicione:setStyle(DialogFragment.STYLE_NORMAL, R.style.MyDialogFragmentStyle);
Em seguida, no seu arquivo styles.xml, adicione:
Depois de horas tentando coisas diferentes, este é o único que fez o truque para mim.
NB - Pode ser necessário alterar
Theme.AppCompat.Light.Dialog.Alert
para outra coisa para combinar com o estilo do seu tema.fonte
android:windowNoTitle
false
não era necessário após a mudança paraAndroid.Support.V7.App.AppCompatDialogFragment
partirAndroid.Support.V4.App.DialogFragment
, nem suficiente, pois resultou em títulos duplicados (mesmo que eu assegurou que estava sendo definido apenas uma vez).DialogFragment pode ser representado como diálogo e como Atividade. Use o código abaixo que funcionaria corretamente para ambos
fonte
Você pode dar uma olhada nos documentos oficiais . A maneira que eu fiz é assim:
fonte