Eu tambem teve o problema de null pointer exception na activity de cadastro de usuario, acredito fortemente que tenha sido porque foi chamado o method onCreate() da activity forçando passar dados que não existem ainda, então apos algumas pesquisas achei uma solução que funcionou, meu codigo em kotlin ficou assim:
val data: Intent = intent
val name : Student? = data.getSerializableExtra("name") as? Student
binding.activityRegisterStudentName.setText(name?.name)
binding.activityRegisterStudentTelephone.setText(name?.telephone)
binding.activityRegisterStudentEmail.setText(name?.email)
E apos uma outra pesquisa rapida achei esta referencia na documentação:
"Safe" (nullable) cast operator To avoid exceptions, use the safe cast operator as? that returns null on failure.
val x: String? = y as? String
Note that despite the fact that the right-hand side of as? is a non-null type String, the result of the cast is nullable.
Porem não entendi muito bem o que aconteceu ali, por acasso o "?" fez o app ignorar essa parte do codigo ate que a string da lista seja clickado ou porque funcionou? e porque quando vou passar os dados para meus EditText tambem preciso colocar o "?" ?