Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

Como alterar a fonte dentro de um fragment

Lá estou com uma dúvida, como eu faço para, modificar a fonte de dentro de um fragment?

tvAgradecimento.setText("Teste")
        tvAgradecimento.setTypeface(Typeface.createFromAsset(tvAgradecimento.context.assets, "dinpro_medium.ttf"))

ERRO

   java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.TextView.setText(java.lang.CharSequence)' on a null object reference
        at br.com.adrianofpinheiro.testesantander.fragment.ContatoEnviadoFragment.onCreateView(ContatoEnviadoFragment.kt:36)
4 respostas

Oi Cristiano, blz?

Está apresentando NPE, muito provavelmente está acontecendo um problema no mapeamento da view que está tentando buscar, seja porque a view não está presente no layout que foi inflado ou o acesso está sendo feito antes do inflate acontecer.

Em qual momento você está buscando a view?

[]s

Não entendo pq vem nulo sendo que eu estou passando um texto?

lass ContatoEnviadoFragment : Fragment() {

    override fun onCreateView(
        inflater: LayoutInflater, container: ViewGroup?,
        savedInstanceState: Bundle?
    ): View? {

        val view: View = inflater.inflate(R.layout.fragment_contato_enviado, container, false)


        tvAgradecimento.setText("Teste")
        tvAgradecimento.setTypeface(Typeface.createFromAsset(tvAgradecimento.context.assets, "dinpro_medium.ttf"))


        view.btNovaMesagem.setOnClickListener { view ->
            criarFragmentContato()
            }

        return view
    }

    fun criarFragmentContato(){
        val trasaction = fragmentManager?.beginTransaction()
        val fragment = ContatoFragment()
        trasaction?.replace(R.id.fragment_container, fragment)
        trasaction?.addToBackStack(null)
        trasaction?.commit()
    }

}

Oi Cristiano, tudo bem?

Para apresentar o NPE, muito provavelmente a referência tvAgradecimento não está sendo acessível a partir do layout inflado.

Se preferir, me envia o projeto via GitHub que eu dou uma olhada e te mando um feedback.

[]s

solução!

Era só usar o android:fontFamily="" no XML

Obrigado pela Ajuda.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software