Meu colega e eu tinha um argumento. Estamos a traduzir o aplicativo para o MVVM+Ligação. Houve a necessidade de iniciar um diálogo a partir de um fragmento. Eu faço assim:
No fragmento:
fragmentBinding.button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
// there's a bunch of code here
alertDialog.show();
}});
Um colega também alegações de que você precisa para fazer isso:
No arquivo xml podemos escrever da seguinte forma:
android:onClick="@{v -> viewModel.showDialog(context)}"
E em ViewModel:
fun showDialog(context: Context){
AlertDialog.Builder builder = new AlertDialog.Builder(context);
// there's a bunch of code here
alertDialog.show();
}
Por favor, me diga, qual é a correta?