Quando estamos em um fragment não temos acesso ao override do onBackPressed, nesse caso temos que acessar a FragmentActivity e adicionar um Callback no onBackPressedDispatcher, dessa maneira começamos a interceptar o click. Na solução abaixo criamos um callback que permite a ação voltar diretamente do Fragment após ele ter realizado o click em um intervalo […]
Android – Como pegar uma View da Activity dentro de um Fragment (getActivity().findViewById returns null, called from fragment onActivityCreated)
O segredo para não retornar null é utilizar o getActivity().findViewById dentro do método onActivityCreated override fun onActivityCreated(savedInstanceState: Bundle?) { super.onActivityCreated(savedInstanceState) activity.findViewById<Button>(R.id.bt_iniciar).setOnClickListener({ startActivity(Intent(activity, MyActivity::class.java)) }) }
Android – Chamando o onActivityResult em Fragment (onActivityResult not called in fragment)
Quando estamos utilizando o Fragment normalmente precisamos de uma instancia da Activity para realizar qualquer tipo de solução, com isso chamamos o getActivity(). Más não devemos chama-la para iniciar uma atividade pois o getActivity é referente ao FragmentActivity. Forma correta (chama o onActivityResult da fragment): this.startActivityForResult(intent,1); Errado (chama o onActivityResult da FragmentActivity): getActivity().startActivityForResult(intent,1);
Android – Como exibir o menu de opções no Fragment (How can use onCreateOptionsMenu in a Fragment)
O procedimento é o mesmo, sobrescrevemos o onCreateOptionMenu e inflamos nosso menu do resources, porem temos que adicionar somente uma linha de código a mais, no fragment vamos sobrescrever o método onCreate() vamos inserir:
Android – Empilhando Fragments para navegação.(navigate backward through the fragment transactions)
Tenha em mente que quando você executa transações de fragments, tais como substituir ou remover um, muitas vezes é apropriado permitir que o usuário navegue para trás para “desfazer” a mudança. Para permitir que o usuário navegue para trás através das operações de fragmentos, você deve chamar o addToBackStack() antes de dar commit no FragmentTransaction. […]