Почему это приложение Kivy падает без какой-либо логической ошибки - PullRequest
0 голосов
/ 26 декабря 2018

я делаю приложение базы данных kivy.это работало хорошо.Недавно я добавил новую функцию.с 2019 по 2050 год в 1 января, на главной странице приложения, появится ярлык.во-первых, я объявляю метку в коде kv.затем дайте идентификатор метке.наконец, я использовал, если заявление.если дата - 1 января, то текст метки будет отображаться на домашней странице как - «с новым годом 2019».в логике нет ошибок.он работает хорошо, когда я запускаю приложение, используя Kivy Launcher.но проблема в том, что, когда я захожу на любую страницу с домашней страницы нажатием кнопки, а затем, когда я возвращаюсь на домашнюю страницу во второй раз, домашняя страница загружается хорошо, и текст метки требует времени для загрузки.и, наконец, приложение вылетает без видимой причины.Где еще я могу искать ошибки?

Я ничего не пробовал, так как ничего не понимаю.Я думаю, что нет логической ошибки.и я не знаю, почему приложение сокрушает

код питона

class LoginPage(BoxLayout):
    mm=ObjectProperty()
    nn=ObjectProperty()
    oo=ObjectProperty()

    def __init__(self,**kwargs):
        super(LoginPage,self).__init__(**kwargs)
        Clock.schedule_interval(self.update,1)
    def update(self,*args):     
        h=str(date.today())
        j=str(time.strftime("%H:%M:%S"))

        if h=="2018-12-25":
            self.ids.a.text="2019!! "
            self.ids.c.text="Have A Very Great Year. "
            self.ids.b.text="HAPPY NEW YEAR"
        elif h=="2019-12-31":
            self.ids.a.text="2020! "
            self.ids.c.text="Have A Very Great Year. "
            self.ids.b.text="HAPPY NEW YEAR"
        elif h=="2020-12-31":
            self.ids.a.text="2021! "
            self.ids.c.text="Have A Very Great Year. "
            self.ids.b.text="HAPPY NEW YEAR"

        elif h=="2021-12-31":
            self.ids.a.text="2022!! "
            self.ids.c.text="Have A Very Great Year. "
            self.ids.b.text="HAPPY NEW YEAR"
        elif h=="2022-12-31":
            self.ids.a.text="2023!! "
            self.ids.c.text="Have A Very Great Year. "
            self.ids.b.text="HAPPY NEW YEAR"
        elif h=="2023-12-31":
            self.ids.a.text="2024!! "
            self.ids.c.text="Have A Very Great Year. "
            self.ids.b.text="HAPPY NEW YEAR"
        elif h=="2024-12-31":
            self.ids.a.text="2025!! "
            self.ids.c.text="Have A Very Great Year. "
            self.ids.b.text="HAPPY NEW YEAR"
        else:
            pass

код kv

<LoginPage>:
    mm:a
    nn:b
    oo:c
    orientation:"vertical" 

    BoxLayout: 
        orientation:"vertical"
        canvas.before:
            Color:
                rgba:1,1,1,1
            Rectangle: 
                pos:self.pos
                size:self.size                       
                source:"log.png"

        BoxLayout:
            orientation:"vertical"
            height:"70dp"
            size_hint_y:None
            Label:
                id:a
                text:""
                color:1,0,0,1
                font_size:38
            Label:
                id:b
                text:""
                font_size:32
            Label:
                id:c
                text:""
                font_size:32

, когда я запускаю приложение, если дата - 1 январялюбой год или последний день предыдущего года, тогда должен быть текст метки.в противном случае нет текста.он работает хорошо в первый раз после запуска.но когда я перехожу на другую страницу и возвращаюсь на домашнюю страницу, страница загружается, и текстовая метка загружается очень быстро.Что ж.Теперь я перехожу на другую страницу.затем, если я вернусь на домашнюю страницу, загрузку текстовой метки и, наконец, приложение запал!

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