을 추가하기 전에 텍스트가 설정되어 있다고하더라도 먼저 EditText에서 텍스트를 복구하고 TextWatcher를 추가합니다.TextWatcher는 안드로이드 액티비티에서 watcher
하지만 액티비티를 실행할 때 텍스트를 설정 한 후 감시자 자체가 추가 된 경우에도 afterTextChanged 메서드가 호출됩니다. 그래서 로그 출력은 TextWatcher에서 카운터가 호출되는 감시자 텍스트가 글고에서 설정 한 후에 추가 된 하나라는 것을 보여줍니다
onCreate: LifecycleMain Set text xyz // screen rotation onCreate: LifecycleMain Set text xyz afterTextChanged: xyz 2
같은 것입니다. 왜 그런 일이 벌어지며 어떻게 막을 수 있니?
아니요. 액티비티가 처음 생성되었을 때 실제로 작동한다는 것이 사실이지만 EditText는 모든 감시자가없는 새 인스턴스가 될 때마다 있습니다. 나는 코드를 단순화하고 관찰자에게 카운터를 추가했다 : – SimonSays
u는 editText et를 정적으로 정의 했는가? 그렇다면 이것이 이유 일 수 있습니다. 그리고 처음에는 f9로 언급 했으므로 문제는 probi를 사용하여 매번 작성하지 않는 edlText의 새 인스턴스 –
죄송합니다. 끝내기 전에 내 의견이 업데이트되었습니다. 나는 위의 코드를 지금 업데이트했다. 나는 그것을 단순화하고 TextWatcher를위한 카운터를 추가했다. 당신이 볼 수있는 것은 활동이 처음 생성되었을 때 문제가 나타나지 않지만 두 번째로 나타납니다. 그러나 두 번째 TextWatcher 인스턴스가 호출됩니다. 첫 번째 인스턴스는 아닙니다. 또한 EditText는 감시자가 연결되지 않은 항상 새로운 인스턴스입니다. 및 아니오; EditText는 정적으로 정의되지 않습니다. – SimonSays