Ok Sono molto confuso qui su come fare una finestra personalizzata correttamente utilizzando l'ultima appcompat v23.0.1 Ecco un paio di modimodo corretto di fare una finestra di dialogo materiale personalizzato con AppCompat 23+
primo modo :
public class AddTipDialogFrag extends DialogFragment
{
@Override
public Dialog onCreateDialog(Bundle savedInstanceState)
{
int title = getArguments().getInt("title");
AppCompatDialog dialogCompat = new AppCompatDialog(getActivity(), R.style.MyAlertDialogStyle);
dialogCompat.setTitle(title); //doesn't work btw
dialogCompat.setContentView(R.layout.add_tip_fragment);
return dialogCompat;
}
}
2 ° modo:
public class AddTipDialogFrag extends AppCompatDialogFragment
{
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
{
View view = inflater.inflate(R.layout.add_tip_fragment,container, false);
int title = getArguments().getInt("title");
getDialog().setTitle(title);
return view;
}
}
Entrambi i modi sembrano produrre lo stesso risultato. Personalmente preferisco la 1a via, ma c'è un problema con l'effetto a catena in cui viene tagliato quando finisce il bordo della vista principale, come puoi vedere nella foto qui sotto.
Si tratta di un bug? (Deve essere!) Posso ripararlo o devo solo convertire in 2 modo? (Che funziona bene con l'effetto a catena). Qual è l'approccio migliore tra questi due modi considerando che la maggior parte delle biblioteche di materiali di testo stanno usando il primo modo?
EDIT: l'errore di ripple sul primo modo non sembra più verificarsi quindi non sono ancora sicuro di quale sia il modo giusto per quei due.
Stai utilizzando le librerie di supporto compat dell'app e "AppCompatDialogFragment" ti dà il comportamento desiderato, quindi penso che tu abbia già risposto alla tua domanda. –
Sì, penso che "AppCompatDialogFragment" funzioni come previsto, ma volevo solo sapere qual è l'approccio migliore per dialoghi come quello. La maggior parte delle biblioteche di materiali di testo usano la prima. Ecco perché ero piuttosto scettico, ma grazie per la tua risposta – ThanosFisherman
Come aggiungere il pulsante positivo e negativo in AppCompatDialogFragment? –