Редактирование текста Проблема с быстродействием при наборе текста внутри afterTextChanged - PullRequest
0 голосов
/ 23 сентября 2019

На самом деле, у меня есть числовой текст редактирования, и я добавляю к нему Text Watcher.

Я реализовал два подхода:

Первый:

  override fun afterTextChanged(view: Editable?) {
    editText.removeTextChangedListener(this)
    //after add some separator
    editText.setText(newString)

    inputView.addTextChangedListener(this)
}

Второй:

  override  fun afterTextChanged(view: Editable?) {
    synchronized(this) {
        if(!semaphore.orFalse()){
            semaphore = true
            //after add some separator
            editText.setText(newString)
            semaphore = false
        }
    }
}

Проблема: , когда пользователь начинает быстро набирать цифры, пользовательский интерфейс становится медленным (означает, что обновление текста редактирования становится медленным)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...