Ошибка в kivy screen.add_widget(self.label1) AttributeError: 'DemoApp' object has no attribute 'label1'
Я никак не могу понять,почему он пишет ,что нет атрибута для лейбла,хотя вроде все добавил Спасибо заранее огромное за помощь!Пишу впервые на киви проект:)
from kivymd.uix.label import MDLabel, MDIcon, Label
from kivymd.app import MDApp
from kivymd.uix.button import MDFloatingActionButton, MDFlatButton , MDIconButton , MDRectangleFlatButton
from kivy.uix.screenmanager import Screen, ScreenManager
from kivy.lang.builder import Builder
screen_helper = """
ScreenManager:
MenuScreen:
FirstPage:
<MenuScreen>:
name: 'menu'
MDRectangleFlatButton:
text: 'Start'
pos_hint: {'center_x':0.5,'center_y':0.6}
on_press: root.manager.current = 'page'
MDRectangleFlatButton:
text: 'Back'
pos_hint: {'center_x':0.5,'center_y':0.1}
on_press: root.manager.current = 'menu'
<FirstScreen>
name:'page'
MDRectangleFlatButton:
text: 'Back'
pos_hint: {'center_x':0.9,'center_y':0.9}
on_press: root.manager.current = 'menu'
"""
class FirstScreen(Screen):
def build(self):
self.test.resultation = 0
self.label1 = MDLabel(text="Самая большая территория в мире? \n1 Россия \n2 Америка \n3 Япония \n4 Китай",
pos_hint={'center_x': 0.65, 'center_y': 0.7}, theme_text_color="Error",
font_style="Subtitle2")
self.test_result = MDLabel(text='Баллы:' + str(self.test_resultation), #вывод баллов
pos_hint = {'center_x' : 0.9,'center_y': 0.9 }, theme_text_color="Primary",
font_style ="Subtitle2")
self.theme_cls.primary_palette = "DeepOrange"
self.theme_cls.primary_hue = "A700"
self.theme_cls.theme_style = "Dark"
self.btn_flat = MDRectangleFlatButton(text='1',
pos_hint={'center_x': 0.2, 'center_y': 0.35})
self.btn_flat1 = MDRectangleFlatButton(text='2',
pos_hint={'center_x': 0.2, 'center_y': 0.25})
self.btn_flat2 = MDRectangleFlatButton(text='3',
pos_hint={'center_x': 0.8, 'center_y': 0.35})
self.btn_flat3 = MDRectangleFlatButton(text='4',
pos_hint={'center_x': 0.8, 'center_y': 0.25}) #кнопки выбора
class MenuScreen(Screen):
pass
class ProfileScreen(Screen):
pass
class UploadScreen(Screen):
pass
class FirstScreen(Screen):
pass
class DemoApp(MDApp): #постройка всего кода
def build(self):
screen = Screen()
screen.add_widget(self.label1) #в этом месте ошибка
screen.add_widget(self.btn_flat)
screen.add_widget(self.btn_flat1)
screen.add_widget(self.btn_flat2)
screen.add_widget(self.btn_flat3)
screen.add_widget(self.test_result)
screen = Builder.load_string(screen_helper)
return screen
sm = ScreenManager() #скрины добавление
sm.add_widget(MenuScreen(name='menu'))
sm.add_widget(ProfileScreen(name='profile'))
sm.add_widget(FirstScreen(name='page'))
DemoApp().run()