Junior — Middle
Como é que se podem passar parâmetros na inicialização de um Fragment em Android?
sobes.tech IA
Resposta da IA
Os parâmetros na inicialização de um Fragment em Android são geralmente passados através de um objeto Bundle, que é definido no Fragment usando o método setArguments(). Isto é feito para que os parâmetros sejam preservados ao ser recriado o fragmento pelo sistema.
Exemplo de criação de um fragmento com parâmetros:
class MyFragment : Fragment() {
companion object {
private const val ARG_PARAM = "param"
fun newInstance(param: String): MyFragment {
val fragment = MyFragment()
val args = Bundle()
args.putString(ARG_PARAM, param)
fragment.arguments = args
return fragment
}
}
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
val param = arguments?.getString(ARG_PARAM)
// Utilize o param conforme necessário
}
}
Desta forma, ao criar o fragmento, é chamado o método estático newInstance, que empacota os parâmetros num Bundle e os define no fragmento. Este é o método padrão e recomendado para passar parâmetros aos fragments.