Проблемы с постоянно появляющимися сообщениями об ошибках «Предупреждение, слишком много итераций сделано до следующего кадра ...» - PullRequest
0 голосов
/ 08 октября 2019

У меня проблема с тестированием моих приложений из-за большого количества сообщений типа «Предупреждение, слишком много итераций сделано до следующего кадра ...». Я не могу понять, в чем причина этой ошибки!

Вот мой main.py:

 # encoding=utf8
from kivy.config import Config
Config.set('kivy', 'keyboard_mode', 'systemanddock')
# from kivy.config import ConfigParser

import sys, os, datetime, ast, os.path
import webbrowser
import time
import numpy as np
from array import array
from decimal import *
from calendar import monthrange

from kivy.app import App
from kivy.uix.button import Button
from kivy.uix.boxlayout import BoxLayout
from kivy.uix.anchorlayout import AnchorLayout
from kivy.uix.gridlayout import GridLayout
from kivy.uix.scrollview import ScrollView
from kivy.uix.popup import Popup
from kivy.lang import Builder
from kivy.uix.behaviors import ButtonBehavior
from kivy.uix.image import Image
from kivy.core.text import Label
from kivy.uix.screenmanager import ScreenManager, Screen
from kivy.uix.screenmanager import SlideTransition
from kivy.uix.screenmanager import NoTransition
from kivy.properties import ObjectProperty, NumericProperty, StringProperty, BooleanProperty, ListProperty
from kivy.utils import get_hex_from_color
from kivy.metrics import dp, sp, pt
from kivy.clock import Clock
from kivy.uix.textinput import TextInput

from kivymd.theming import ThemeManager
from kivymd.toast.kivytoast import toast
from kivymd.dialog import MDDialog
from kivymd.label import MDLabel
from kivymd.button import MDRoundFlatButton
from kivymd.button import MDRaisedButton
from kivymd.list import ILeftBodyTouch
from kivymd.popupscreen import MDPopupScreen
from newpickers import MDDatePicker
from kivymd.menus import MDDropdownMenu
from kivymd.textfields import MDTextField

import calculate_tattva as cttv
import globalvars as glvs

isdesktop = 0

monthlist = ['Январь','Февраль','Март','Апрель','Май','Июнь','Июль','Август','Сентябрь','Октябрь','Ноябрь','Декабрь']
year = 0
monthnum = 0
daynum = 0
selected_date = ''
selected_date_backup = ''
selyr = 1900
selmn = 1
selsex = 1
selhr = ''
selmin = ''
selsunhr = ''
selsunmin = ''
selnaksh = 0
nakshlist = ["Ашвини(1)","Бхарани(2)","Криттика(3)","Рохини(4)","Мригашира(5)","Ардра(6)","Пунарвасу(7)","Пушья(8)","Ашлеша(9)", 
            "Магха(10)","Пурвапхалгуни(11)","Уттарапхалгуни(12)","Хаста(13)","Читра(14)","Свати(15)","Вишакха(16)","Анурадха(17)","Джйештха(18)",
            "Мула(19)","Пурвашадха(20)","Уттарашадха(21)","Шравана(22)","Дхаништха(23)","Сатабхиша(24)","Пурвабхадрапада(25)",
            "Уттарабхадрапада(26)","Ревати(27)"]

class Manager(ScreenManager):
    def __init__(self, **kwargs):
        super(Manager, self).__init__(**kwargs)
        # self.initManager()

    # def initManager(self):

    #   global isdesktop

    #   if isdesktop == 1:
    #       pass
    #   else:
    #       pass
    #       self.checkregkey()

    # def checkregkey(self):

        # global configvalue

        # key = str(configvalue.get('mainsection', 'keyreg'))
        # print("Найденный ключ: " + key)

        # if key == '12345678':
        #   self.transition = NoTransition()
        #   self.current = 'main_menu'
        # else:
        #   self.transition = NoTransition()
        #   self.current = 'registration_menu'

        # try:
        #   PythonActivity = jnius.autoclass('org.renpy.android.PythonActivity')
        #   activity = PythonActivity.mActivity
        #   cntxt = activity.getApplicationContext()
        #   prefs = cntxt.getSharedPreferences("MY_PREFS", cntxt.MODE_PRIVATE)
        #   myVar = prefs.getString("keyvalue", "Default String")
        # except jnius.jnius.JavaException as err:
        #   myVar="Error Loading Prefs."
        #   print("KIVY, 3, error: {}".format(repr(err)))

        # registeredkey = myVar

        # if registeredkey != '12345678':
        #   self.transition = NoTransition()
        #   self.current = 'registration_menu'
        # else:
        #   self.transition = NoTransition()
        #   self.current = 'main_menu'

class MainMenu(Screen):
    pass

class InfoMenu(Screen):
    pass

class ResultMenu(Screen):

    def results(self):

        self.ids.labelfirst.text = ("Группа накшатр - " + str(glvs.output_text_1))
        self.ids.labelsecond.text = ("Разница времени рождения и восхода - " + str(glvs.output_text_2_hour) + "ч " + str(glvs.output_text_2_minute) + "м")
        self.ids.labelthird.text = ("Близжайшее число пал - " + str(glvs.output_text_3))
        self.ids.labelfourth.text = ("Присвоенное число - " + str(glvs.output_text_4))
        self.ids.labelfifth.text = ("Общее число пал - " + str(glvs.output_text_5))
        self.ids.labelsixth.text = ("Найденная таттва - " + str(glvs.output_text_6))
        self.ids.labelseventh.text = str(glvs.output_text_7)
        self.ids.labeleighth.text = ("Расчетное время рождения - " + str(glvs.output_text_8_hour) + ":" + str(glvs.output_text_8_minute) + "\n(совпадающее с выбранным полом)")

class ResultScrollView(ScrollView):
    pass

class YearSelectButton(MDRaisedButton):
    pass

class MonthSelectButton(MDRaisedButton):
    pass

class TimeHourButton(MDRaisedButton):
    pass

class TimeMinuteButton(MDRaisedButton):
    pass

class SunTimeHourButton(MDRaisedButton):
    pass

class SunTimeMinuteButton(MDRaisedButton):
    pass

class NakshatraChooserButton(MDRaisedButton):
    pass

class DateSetupMenu(Screen):
    def __init__(self, **kwargs):
        super().__init__(**kwargs)

        global monthlist

        self.datetxt = ''

        self.year_items = [
                {
                    "viewclass": "MDMenuItem",
                    "text": "%d" % i,
                    "callback": self.callbackforyear,
                }
                for i in range(1900, 2100)
            ]

        self.month_items = [
                {
                    "viewclass": "MDMenuItem",
                    "text": str(monthlist[i]),
                    "callback": self.callbackformonth,
                }
                for i in range(0, 12)
            ]

        self.hour_items = [
                {
                    "viewclass": "MDMenuItem",
                    "text": "%02d" % i,
                    "callback": self.callbackforhour,
                }
                for i in range(00, 24)
            ]

        self.minute_items = [
                {
                    "viewclass": "MDMenuItem",
                    "text": "%02d" % i,
                    "callback": self.callbackforminute,
                }
                for i in range(00, 60)
            ]

        self.sunhour_items = [
                {
                    "viewclass": "MDMenuItem",
                    "text": "%02d" % i,
                    "callback": self.callbackforsunhour,
                }
                for i in range(00, 24)
            ]

        self.sunminute_items = [
                {
                    "viewclass": "MDMenuItem",
                    "text": "%02d" % i,
                    "callback": self.callbackforsunminute,
                }
                for i in range(00, 60)
            ]

        self.nakshatra_items = [
                {
                    "viewclass": "MDMenuItem",
                    "text": str(nakshlist[i]),
                    "callback": self.callbackfornakshatra,
                }
                for i in range(0, 27)
            ]

        self.menu_button = None

    def callbackforlist(self, *args):
        pass

    def callbackforyear(self, *args):
        global selyr

        selyr = int(args[0])

    def callbackformonth(self, *args):
        global selmn
        global monthlist

        selmn = int(monthlist.index(str(args[0])))+1

    def callbackforhour(self, *args):
        global selhr

        selhr = int(args[0])

    def callbackforminute(self, *args):
        global selmin

        selmin = int(args[0])

    def callbackforsunhour(self, *args):
        global selsunhr

        selsunhr = int(args[0])

    def callbackforsunminute(self, *args):
        global selsunmin

        selsunmin = int(args[0])

    def callbackfornakshatra(self, *args):
        global selnaksh
        global nakshlist

        selnaksh = int(nakshlist.index(str(args[0])))+1

    # def changetip(self):
    #   print('datetxt: ' + str(self.datetxt))
    #   self.datetxt = str(glvs.daynum)
    #   print('datetxt2: ' + str(self.datetxt))
    #   # self.date_button.text = str(glvs.daynum)

class Year_layout_popup1(GridLayout):
    pass

class Year_layout_scrollview1(ScrollView):
    pass

class YearButton1(MDRaisedButton):
    pass

class YearSelectionButton(MDRoundFlatButton):
    def on_release(self):
        global year
        year = int(self.text)

class DatePickPopup(Popup):
    pass

class Month_layout_popup(GridLayout):
    pass

class Month_layout_scrollview(ScrollView):
    pass

class MonthButton(MDRaisedButton):
    pass

class DatePickerWidget(MDDatePicker):   
    pass

class MonthSelectionButton(MDRoundFlatButton):
    def on_release(self):
        global monthlist
        global monthnum
        monthnum = int(monthlist.index(str(self.text)))
        monthnum += 1

class MonthPickPopup(Popup):
    pass

class yearselectbtn(Button):
    pass

class monthselectbtn(Button):
    pass

class keyinput(MDTextField):
    pass

class RegistrationMenu(Screen):

    def keycheck(self):

        global configvalue

        if self.keyhere.text == '12345678':
            # configvalue.set('mainsection', 'keyreg', '12345678')
            # configvalue.write()
            toast('KEY IS CORRECT')
            self.manager.transition = SlideTransition(direction='left', duration = .17)
            self.manager.current = 'main_menu'
        elif len(self.keyhere.text) > 8:
            toast('Too much text!')
        else:
            toast('KEY IS INCORRECT!')


        # if self.keyhere.text == '12345678':
        #   try:
        #       PythonActivity = jnius.autoclass('org.renpy.android.PythonActivity')
        #       activity = PythonActivity.mActivity
        #       cntxt = activity.getApplicationContext()
        #       prefs = cntxt.getSharedPreferences("MY_PREFS", cntxt.MODE_PRIVATE)
        #       editor = prefs.edit()
        #       editor.putString("keyvalue", str(self.keyhere.text))
        #       editor.commit()
        #   except Exception as err:
        #       print("\tKIVY, 6, error: {}".format(repr(err)))
        #   toast('KEY IS CORRECT')
        #   self.manager.transition = SlideTransition(direction='left', duration = .17)
        #   self.manager.current = 'main_menu'
        # elif len(self.keyhere.text) > 8:
        #   toast('Too much text!')
        # else:
        #   toast('KEY IS INCORRECT!')

class rt_android(App):
    theme_cls = ThemeManager()
    theme_cls.device_orientation == 'portrait'
    title = 'Rectif Tattva Android Edition'
    yearselectlabeltext = StringProperty('Выберите год рождения')
    monthselectlabeltext = StringProperty('Выберите месяц рождения')
    dateselectlabeltext = StringProperty('Выберите день рождения')
    mlist = ['Месяц','Январь','Февраль','Март','Апрель','Май','Июнь','Июль','Август','Сентябрь','Октябрь','Ноябрь','Декабрь']
    datetxt = ''

    # def build_config(self, config):
    #   config.setdefaults('mainsection', {
    #       'keyreg': 'value123'
    #   })

    def build(self):

        global isdesktop
        global configvalue

        self.theme_cls.theme_style = 'Light'
        # self.config.read(os.path.join(self.directory, '%(appname)s.ini'))
        # configvalue = self.config
        if isdesktop == 1:
            from kivy.core.window import Window
            Window.size = (480, 854)
        else:
            pass
        return Manager()

    def ExitDialog(self):
        self.dialog = MDDialog(
            title='Выход из приложения', size_hint=(.8, .25), text_button_ok='Нет',
            text="Вы точно хотите выйти?",
            text_button_cancel='Да',
            events_callback=self.CloseExitPopup)
        self.dialog.open()

    def CloseExitPopup(self, *args):
        from kivymd.toast.kivytoast import toast
        if args[0] == 'Да':
            App.get_running_app().stop()
        else:
            pass

    def OpenDatePicker(self, *args):
        global selyr
        global selmn
        DatePickerWidget(self.set_date, selyr, selmn, 1).open()

    def set_date(self, date_obj):
        global selected_date
        global year
        global monthnum
        global daynum
        global selected_date_backup
        self.setupdate = date_obj
        selected_date = str(self.setupdate)
        selected_date_backup = str(self.setupdate)

        glvs.selected_date_backup = selected_date_backup

        year = int(selected_date[0:4])
        monthnum = int(selected_date[5:7])
        daynum = int(selected_date[8:10])
        month_id = monthnum-1

    def callback(self, *args):
        global selsex
        if args[0] == 'Женский':
            selsex = 2
        else:
            selsex = 1

    def callmodulevars(self):

        global selhr
        global selmin
        global selsunhr
        global selsunmin
        global year
        global monthnum
        global daynum
        global selnaksh

        glvs.selhr = selhr
        glvs.selmin = selmin
        glvs.selsunhr = selsunhr
        glvs.selsunmin = selsunmin
        glvs.year = year
        glvs.monthnum = monthnum
        glvs.daynum = daynum
        glvs.selnaksh = selnaksh
        glvs.selsex = selsex

        cttv.cttvmainclass.calculateDate(self)

        self.txthr = cttv.output_text_8_hour
        self.txtmn = cttv.output_text_8_minute

        print('Часы: ' + str(self.txthr) + ' Минуты: ' + str(self.txtmn))

class CreditsImage(Image):
    pass

with open("main_interface.kv", encoding='utf8') as f:
    main_interface = Builder.load_string(f.read())

if __name__ == '__main__':
    rt_android().run()

Вот мой main.kv:

 # encoding=utf8 
#:import SlideTransition kivy.uix.screenmanager.SlideTransition
#:import Factory kivy.factory.Factory
#:import MDLabel kivymd.label.MDLabel
#:import MDRaisedButton kivymd.button.MDRaisedButton
#:import MDRectangleFlatButton kivymd.button.MDRectangleFlatButton
#:import MDToolbar kivymd.toolbar.MDToolbar
#:import MDRoundFlatButton kivymd.button.MDRoundFlatButton
#:import MDDropdownMenu kivymd.menus.MDDropdownMenu
#:import MDMenuItem kivymd.menus.MDMenuItem
#:import MDChip kivymd.chips.MDChip
#:import MDChooseChip kivymd.chips.MDChooseChip
#:import hex kivy.utils.get_color_from_hex
#:set white hex('#00a86b')

<MenuButton@MDRaisedButton>:
    font_size: dp(8)
    elevation_normal: 3
    pos_hint: {'center_x': .5, 'center_y': .5}
    size_hint_x: 0.5
    height: dp(50)

<InfoMenuButton@MDRaisedButton>:
    font_size: dp(8)
    elevation_normal: 3
    pos_hint: {'center_x': .5, 'center_y': .5}
    size_hint: None, None
    height: dp(50)

<DateSetupMenuButton@MDRaisedButton>:
    font_size: dp(8)
    elevation_normal: 3
    pos_hint: {'center_x': .5, 'center_y': .5}
    size_hint: None, None
    height: dp(50)
    halign: 'center'
    valign: 'center'

<ResultMenuButton@MDRaisedButton>:
    font_size: dp(8)
    elevation_normal: 3
    pos_hint: {'center_x': .5, 'center_y': .5}
    size_hint: None, None
    height: dp(50)
    halign: 'center'
    valign: 'center'

<RegistrationMenuButton@MDRaisedButton>:
    font_size: dp(8)
    elevation_normal: 3
    pos_hint: {'center_x': .5, 'center_y': .5}
    size_hint: None, None
    height: dp(50)
    halign: 'center'
    valign: 'center'

<InfoMenuLabel@MDLabel>:
    font_name: 'assets/Ponter.ttf'
    color: (255,255,255,1)
    size_hint_y: 0.2
    font_size: dp(20)
    halign: 'center'
    valign: 'center'
    text_size: self.size

<ResultMenuLabel@MDLabel>:
    font_size: dp(12)
    halign: 'center'
    valign: 'center'
    font_name: 'assets/Ponter.ttf'

<RegMenuLabel@MDLabel>:
    color: (255,255,255,1)
    size_hint_y: 0.2
    font_size: dp(20)
    halign: 'center'
    valign: 'center'
    text_size: self.size

<MDMenuItem>:
    on_release:
        app.root.ids.date_setup_menu.menu_button.text = self.text

<YearSelectButton>:
    id: buttonofyear
    font_size: dp(8)
    pos_hint: {'center_x': .5, 'center_y': .5}
    size_hint: None, None
    height: dp(50)

<MonthSelectButton>:
    id: buttonofmonth
    font_size: dp(8)
    pos_hint: {'center_x': .5, 'center_y': .5}
    size_hint: None, None
    height: dp(50)

<TimeHourButton>:
    id: buttonofhour
    font_size: dp(8)
    pos_hint: {'center_x': .5, 'center_y': .5}
    size_hint: None, None
    height: dp(50)

<TimeMinuteButton>:
    id: buttonofminute
    font_size: dp(8)
    pos_hint: {'center_x': .5, 'center_y': .5}
    size_hint: None, None
    height: dp(50)

<SunTimeHourButton>:
    id: buttonofhoursun
    font_size: dp(8)
    pos_hint: {'center_x': .5, 'center_y': .5}
    size_hint: None, None
    height: dp(50)

<SunTimeMinuteButton>:
    id: buttonofminutesun
    font_size: dp(8)
    pos_hint: {'center_x': .5, 'center_y': .5}
    size_hint: None, None
    height: dp(50)

<NakshatraChooserButton>:
    id: buttonofnakshatra
    font_size: dp(8)
    pos_hint: {'center_x': .5, 'center_y': .5}
    size_hint: None, None
    height: dp(50)

<ResultScrollView>:
    size_hint: None, None
    size: Window.width, Window.height

<keyinput>:
    size_hint: 0.5, None
    font_size: dp(20)
    halign: 'center'
    pos_hint: {'center_x': .5, 'center_y': .5}
    max_text_length: 8

<Manager>:
    RegistrationMenu:
        id: registration_menu
        name: 'registration_menu'
    MainMenu:
        id: main_menu
        name: 'main_menu'
    InfoMenu:
        id: info_menu
        name: 'info_menu'
    DateSetupMenu:
        id: date_setup_menu
        name: 'date_setup_menu'
    ResultMenu:
        id: result_menu
        name: 'result_menu'

<MainMenu>:
    AnchorLayout:
        anchor_y: 'top'
        MDToolbar:
            title: app.title
            elevation: 10
            md_bg_color: white
    AnchorLayout:
        anchor_y: 'bottom'
        BoxLayout:
            orientation: 'vertical'
            size_hint: 0.95, 0.25
            spacing: dp(10)
            padding: [0, 0, 0, dp(10)]
            MenuButton:
                text: 'Приступить'
                on_press:
                    app.root.transition = SlideTransition(direction='left', duration = .17)
                on_release:
                    root.manager.current = 'date_setup_menu'
            MenuButton:
                text: 'Инфо'
                on_press:
                    app.root.transition = SlideTransition(direction='left', duration = .17)
                on_release:
                    root.manager.current = 'info_menu'
            MenuButton:
                text: 'Выход'
                on_release:
                    app.ExitDialog()

<InfoMenu>:
    AnchorLayout:
        anchor_y: 'top'
        MDToolbar:
            title: 'Инфо'
            elevation: 10
            md_bg_color: white
        BoxLayout:
            size_hint_y: 0.4
            orientation: 'vertical'
            spacing: 5
            padding: [0, dp(90), 0, 0]
            pos_hint: {'center_x': .5, 'center_y': 1}
            CreditsImage:
                source: 'assets/info_credits_table.png'
                size_hint_y: 0.8
            InfoMenuLabel:
                text: 'версия программы: 1.0.0'
    AnchorLayout:
        anchor_y: 'bottom'
        BoxLayout:
            orientation: 'vertical'
            size_hint: 0.95, 0.25
            padding: [0, 0, 0, dp(15)]
            InfoMenuButton:
                text: 'Назад'
                on_press:
                    app.root.transition = SlideTransition(direction='right', duration = .17)
                on_release:
                    root.manager.current = 'main_menu'

<DateSetupMenu>:
    AnchorLayout:
        anchor_y: 'top'
        MDToolbar:
            title: 'Выбор параметров'
            elevation: 10
            md_bg_color: white
    AnchorLayout:
        anchor_y: 'center'
        BoxLayout:
            orientation: 'vertical'
            padding: [0, 0, 0, dp(125)]
            spacing: dp(5)
            TimeHourButton:
                id: buttonofhour
                text: 'Часы'
                on_release:
                    root.menu_button = buttonofhour
                    MDDropdownMenu(items=root.hour_items, width_mult=1).open(self)
            TimeMinuteButton:
                id: buttonofminute
                text: 'Минуты'
                on_release:
                    root.menu_button = buttonofminute
                    MDDropdownMenu(items=root.minute_items, width_mult=1).open(self)
            YearSelectButton:
                id: buttonofyear
                text: 'Год'
                on_release:
                    root.menu_button = buttonofyear
                    MDDropdownMenu(items=root.year_items, width_mult=1).open(self)
            MonthSelectButton:
                id: buttonofmonth
                text: 'Месяц'
                on_release:
                    root.menu_button = buttonofmonth
                    MDDropdownMenu(items=root.month_items, width_mult=2).open(self)
            # YearButton1:
            #   text: app.yearselectlabeltext
            #   on_release:
            #       app.year_select_clicked1()
            # MonthButton:
            #   text: app.monthselectlabeltext
            #   on_release:
            #       app.month_select_clicked()
            DateSetupMenuButton:
                id: dsmb
                text: app.dateselectlabeltext
                on_release:
                    root.date_button = dsmb
                    app.OpenDatePicker()
            MDChooseChip:
                pos_hint: {'center_x': .5, 'center_y': .5}
                size_hint: None, None
                font_size: dp(8)
                halign: 'center'
                valign: 'center'
                MDChip:
                    halign: 'center'
                    valign: 'center'
                    height: dp(50)
                    label: 'Мужской'
                    icon: ''
                    callback: app.callback
                MDChip:
                    halign: 'center'
                    valign: 'center'
                    height: dp(50)
                    label: 'Женский'
                    icon: ''
                    callback: app.callback
            SunTimeHourButton:
                id: buttonofhoursun
                text: 'Часы восхода'
                on_release:
                    root.menu_button = buttonofhoursun
                    MDDropdownMenu(items=root.sunhour_items, width_mult=1).open(self)
            SunTimeMinuteButton:
                id: buttonofminutesun
                text: 'Минуты восхода'
                on_release:
                    root.menu_button = buttonofminutesun
                    MDDropdownMenu(items=root.sunminute_items, width_mult=1).open(self)
            NakshatraChooserButton:
                id: buttonofnakshatra
                text: 'Выбор накшатры'
                on_release:
                    root.menu_button = buttonofnakshatra
                    MDDropdownMenu(items=root.nakshatra_items, width_mult=4).open(self)
            MDRaisedButton:
                id: newbtn
                font_size: dp(8)
                pos_hint: {'center_x': .5, 'center_y': .5}
                size_hint: None, None
                height: dp(50)
                text: 'Просчет'
                on_press:
                    app.root.transition = SlideTransition(direction='left', duration = .17)
                on_release:
                    app.callmodulevars()
                    app.root.ids.result_menu.results()
                    # root.changetip()
                    root.manager.current = 'result_menu'
        AnchorLayout:
            anchor_y: 'bottom'
            BoxLayout:
                orientation: 'vertical'
                size_hint: 0.95, 0.25
                padding: [0, 0, 0, dp(15)]
                DateSetupMenuButton:
                    text: 'Назад'
                    on_press:
                        app.root.transition = SlideTransition(direction='right', duration = .17)
                    on_release:
                        root.manager.current = 'main_menu'

<ResultMenu>:
    AnchorLayout:
        anchor_y: 'top'
        MDToolbar:
            title: 'Результаты'
            elevation: 10
            md_bg_color: white
    # AnchorLayout:
    #   anchor_y: 'center'
    BoxLayout:
        # orientation: 'vertical'
        # size_hint: 0.5, 0.5
        # padding: [0, 0, 0, 0]
        # spacing: dp(5)
        # pos_hint: {'center_x': 0.5, 'center_y': 0.5}
        orientation: 'vertical'
        size_hint: 1, 0.5
        pos_hint: {'center_x': 0.5, 'center_y': 0.5}
        ResultMenuLabel:
            id: labelfirst
            text: 'label1'
        ResultMenuLabel:
            id: labelsecond
            text: 'label2'
        ResultMenuLabel:
            id: labelthird
            text: 'label3'
        ResultMenuLabel:
            id: labelfourth
            text: 'label4'
        ResultMenuLabel:
            id: labelfifth
            text: 'label5'
        ResultMenuLabel:
            id: labelsixth
            text: 'label6'
        ResultMenuLabel:
            id: labelseventh
            text: 'label7'
        ResultMenuLabel:
            id: labeleighth
            text: 'label8'
    AnchorLayout:
        anchor_y: 'bottom'
        BoxLayout:
            orientation: 'vertical'
            size_hint: 0.95, 0.25
            padding: [0, 0, 0, dp(15)]
            ResultMenuButton:
                text: 'Назад'
                on_press:
                    app.root.transition = SlideTransition(direction='right', duration = .17)
                on_release:
                    # app.root.ids.date_setup_menu.changetip()
                    # app.root.ids.date_setup_menu.date_button.text = app.root.ids.date_setup_menu.datetxt
                    root.manager.current = 'date_setup_menu'

<RegistrationMenu>:
    keyhere: keyhere
    AnchorLayout:
        anchor_y: 'top'
        MDToolbar:
            title: 'Регистрация ключа'
            elevation: 10
            md_bg_color: white
        BoxLayout:
            size_hint_y: 0.4
            orientation: 'vertical'
            spacing: 5
            padding: [0, dp(90), 0, 0]
            pos_hint: {'center_x': .5, 'center_y': 1}
            RegMenuLabel:
                text: 'Введите Ваш персональный регистрационный ключ'
            keyinput:
                id: keyhere
                hint_text: "Ввести ключ сюда"
    AnchorLayout:
        anchor_y: 'bottom'
        BoxLayout:
            orientation: 'vertical'
            size_hint: 0.95, 0.25
            padding: [0, 0, 0, dp(15)]
            RegistrationMenuButton:
                text: 'Подтвердить'
                on_press:
                    app.root.transition = SlideTransition(direction='right', duration = .17)
                on_release:
                    root.keycheck()

IПротестировал это приложение перед добавлением киви конфиг и меню регистрации (и всего, что с этим связано). У меня нет никаких мыслей о возможной причине этой проблемы.

...