1
resposta

envio de paramentos e recebimentos de activity e fragments

Tenho o valor email vindo de uma activity por meio do parametro intentTelaPrincipal.putExtra("email", email) e preciso ler este paramentro dentro do fragment e, depois neste fragment repassá-lo para outra activity. Como passo o valor de uma activity para fragment e depois do fragment para a activity?

1 resposta

Fala ai Vanessa, tudo bem ?

Você pode deixar o atributo na sua activity e delegar a responsabilidade de trocar de tela, do fragment para a activity, usando o pattern delegate, algo próximo disso:

interface Delegate {

    fun trocaTela()
}


class SuaActivity : AppCompatActivity(), Delegate {

    lateinit var email: String?

    override fun onCreate(bundle : Bundle?) {
        // código anterior

        email = intent.getStringExtra("email") 
    }


    override fun trocaTela(){
        //faz a troca certinho aqui
    }

}



class SeuFragment : Fragment(){

    //evento de trocar a tela
    val delegate = activity as Delegate 

    delegate.trocaTela()


}