Я создал экранный менеджер на своем python для хранения 2 экранов. 1-й экран - это обычная коробка с лейблом, с которой у меня нет проблем. Второй экран, который я создаю, представляет собой панель со вкладками, в которой есть ошибка исключения.
Вот main.py:
from kivy.app import App`
from kivy.uix.gridlayout import GridLayout
from kivy.uix.boxlayout import BoxLayout
from kivy.uix.button import Button
from kivy.uix.label import Label
from kivy.uix.widget import Widget
from kivy.properties import ObjectProperty
from kivy.core.window import Window
from kivy.uix.popup import Popup
from kivy.lang import Builder
from kivy.uix.screenmanager import ScreenManager,Screen
from kivy.uix.tabbedpanel import TabbedPanel,TabbedPanelItem
class ScreenOne(Screen):
pass
class ScreenTwo(Screen):
pass
class Manager(ScreenManager):
screen_one = ObjectProperty(None)
screen_two = ObjectProperty(None)
class MainPartListApp(App):
def build(self):
Window.clearcolor = (1,0,0,0.8)
return Manager()
PartList = MainPartListApp()
PartList.run()
Вот my MainPartList.kv
<ScreenOne>:
GridLayout:
cols: 1
spacing: 10
padding: 20
BoxLayout:
canvas:
Color:
rgba: 1,1,1,1
Rectangle:
size: self.size
pos: self.pos
padding: 20
Label:
font_size: 15
text_size: self.size
halign: 'left'
valign: 'middle'
text: "Hello World"
color: 0,0,0,1
BoxLayout:
size_hint_y: .10
GridLayout:
orientation: 'Vertical'
rows: 2
BoxLayout:
size_hint_x: .3
CheckBox:
on_active:
root.manager.transition.duration= 2
root.manager.current= 'screen2'
BoxLayout:
Label:
size_hint_x: .7
halign: 'right'
font_size: 12
text: "I accept the agreement."
<ScreenTwo>:
Tabbedpanel:
size: self.size
do_default_tab: False
#Create 1st tab
TabbedPanelItem:
text: 'Tab 1'
Label:
text: "First tab"
#Create 2nd tab
TabbedPanelItem:
text: 'Tab 2'
BoxLayout:
Label:
text: 'Press button'
Button:
text: 'Click it'
<Manager>:
id: screen_manager
screen_one: screen_one
screen_two: screen_two
ScreenOne:
id: screen_one
name: 'screen1'
manager: screen_manager
ScreenTwo:
id: screen_two
name: 'screen2'
manager: screen_manager
Выполнение этого вызовет FactoryException ('неизвестный класс <% s>'% name) kivy.factory.FactoryException: неизвестный класс.
Ваша помощь действительно очень ценится.