Как убрать сообщение об ошибке в textfield KIVYMD?

В документации kivymd показано как сделать ошибку в textfield, но не показано как её убрать, т. е. ввел пользователь буквы вместо цифр, ему вылезает ошибка об этом, однако потом она не исчезает: поле так и остается красным. Объясните как это можно убрать?

  from kivy.lang import Builder
  from kivymd.app import MDApp

  KV = '''
  BoxLayout:
  padding: "10dp"

MDTextField:
    id: text_field_error
    hint_text: "Helper text on error (press 'Enter')"
    helper_text: "There will always be a mistake"
    helper_text_mode: "on_error"
    pos_hint: {"center_y": .5}
'''


class Test(MDApp):
def __init__(self, **kwargs):
    super().__init__(**kwargs)
    self.screen = Builder.load_string(KV)

def build(self):
    self.screen.ids.text_field_error.bind(
        on_text_validate=self.set_error_message,
        on_focus=self.set_error_message,
    )
    return self.screen

def set_error_message(self, instance_textfield):
    self.screen.ids.text_field_error.error = True


Test().run()

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

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

В документации сказано, что для того, чтобы отобразить ошибку, нужно установить параметра error у TextField в True. Что у вас и сделано в функции set_error_message. Чтобы убрать, нужно параметр self.screen.ids.text_field_error.error сделать False.

self.screen.ids.text_field_error.error = False

Логику обработки ошибок вам придется сделать самостоятельно.

→ Ссылка