Выделяется красным addTextChangedListener (kotlin)

Проблема с addTextChangedListener, выдает ошибку Unresolved reference: addTextChangedListener. Подскажите, пожалуйста, как убрать эту ошибку, ведь у других она не проявляется. Вот код:

register_input_code.addTextChangedListener(object : TextWatcher {
        override fun afterTextChanged(s: Editable?) {
            val string = register_input_code.toString()
            if(string.length==6){
                verifCode()
            }
        }

        override fun beforeTextChanged(s: CharSequence?, start: Int, count: Int, after: Int) {
        }

        override fun onTextChanged(s: CharSequence?, start: Int, before: Int, count: Int) {
        }
    })
}

fun verifCode() {
    Toast.makeText(activity, "Ok", Toast.LENGTH_SHORT).show()
}

Ответы (1 шт):

Автор решения: woesss

R.id.register_input_code - это число-идентификатор, с помощью которого можно найти элемент разметки методом findViewById(), получить ссылку на элемент можно так:

val register_input_code = findViewById<EditText>(R.id.register_input_code)
register_input_code.addTextChangedListener(object : TextWatcher {...})

P.S. Вот вам шаблон инициализации вью во фрагментах:

class EnterCodeFragment : Fragment(R.layout.fragment_enter_code) {

    private lateinit var register_input_code: EditText

    override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
        super.onViewCreated(view, savedInstanceState)

        register_input_code = view.findViewById(R.id.register_input_code)
        register_input_code.addTextChangedListener(object : TextWatcher {...})
    }

    ...
}
→ Ссылка