kivymd 屏幕管理器的壁纸问题

问题描述 投票:0回答:1

我想尝试使用 screenmanager 将多个屏幕插入到我的应用程序中,但是当我启动它时,深色背景“md_bg_color: [22/255, 24/255, 28/255, 1]”变得完全白色,我可以' 不要改变它

这是我的 pyhton代码:

from kivymd.app import MDApp
from kivy.uix.screenmanager import ScreenManager
from kivymd.uix.screen import Screen
from kivy.core.window import Window
from kivymd.uix.dialog import MDDialog
from kivymd.uix.label import MDLabel, MDIcon
from kivymd.uix.button import MDFlatButton, MDRectangleFlatButton
from kivymd.uix.textfield import MDTextField
from kivy.uix.gridlayout import GridLayout
from kivy.lang import Builder
from kivy.uix.relativelayout import RelativeLayout
from kivy.uix.screenmanager import ScreenManager


class FirstWindow(Screen):
    pass

class SecondiWindow(Screen):
    pass

class WindowManager(ScreenManager):
    pass

class MyApp(MDApp):
    def build(self):
        self.theme_cls.primary_palette = "Orange"
        self.theme_cls.primary_hue = 'A700'
        return
    

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

kivy代码:

WindowManager:
    FirstWindow:
    SecondiWindow:

<SecondiWindow>:
    name: 'second'  
    md_bg_color: [22/255, 24/255, 28/255, 1]           
    MDBottomNavigation:
        MDBottomNavigationItem:
            name: "screen-1"
            text: 'chat'
            icon: 'chat'
            MDLabel: 
                text:"JAHF"
                halign: 'center'
        MDBottomNavigationItem:
            name: "screen-2"
            text: 'chadsdsadt'
            icon: "coffee"
            MDLabel: 
                text:"JAHFdsdsdds"
                halign: 'center'
 
<FirstWindow>:  
    name: "first"
    md_bg_color: [24/255, 24/255, 28/255, 1]
    MDCard:    
        size_hint: None,None
        size: 400,500
        pos_hint: {'center_x': 0.5,'center_y': 0.5}
        elevation: 3
        md_bg_color: [30/255, 30/255, 32/255, 1]
        orientation: 'vertical'
        padding: (0,0,0,20)

        RelativeLayout:

            MDLabel:
                id: logo
                text: "TIKTOK+"
                text_size: self.size
                color: [205/255, 75/255, 8/255, 1]
                font_size: 30
                family_name: 'Helvetica'
                bold: True
                markup: True
                valign: 'top'
                halign: 'center'
                padding: (0,20,0,0)
                        
            MDTextField:
                id: user
                hint_text: 'Enter Username'
                helper_text: "or click on forgotten username or password"
                helper_text_mode: "on_focus"
                helper_text_color: 1,1,1,1
                hint_text_color_normal: 1,1,1,1
                line_color_normal: 1,1,1,1
                icon_right_color_normal: 1,1,1,1
                icon_right: "account"
                size_hint_x: None
                width: 300
                font_size: 18
                pos_hint: {'center_x': 0.5, 'center_y': 0.7}#, 'center_y': 0.5}
                        
                        
            MDTextField:
                id: password
                hint_text_color_normal: 1,1,1,1
                line_color_normal: 1,1,1,1
                icon_right_color_normal: 1,1,1,1
                hint_text: 'Enter Username'
                icon_right: "eye-off"
                size_hint_x: None
                width: 300
                font_size: 18
                pos_hint: {'center_x': 0.5, 'center_y': 0.55}
                password: True

            MDRectangleFlatButton:
                id: login
                text: 'Login'
                pos_hint: {'center_x': 0.7, 'center_y': 0.4}
                size_hint: 0.3, None

            MDRectangleFlatButton:
                id: register
                text: 'Registrati'
                pos_hint: {'center_x': 0.3, 'center_y': 0.4}
                on_release: app.root.current = "second"
                
            MDLabel:
                text: "------------------   or   ------------------"
                text_size: self.size
                color: [1,1,1,1]
                font_size: 15
                family_name: 'Helvetica'
                pos_hint: {'center_x': 0.5, 'center_y': 0.78}
                    
                halign: 'center'

            MDRoundFlatIconButton:
                id: google
                icon: "google"
                text: 'Continua con Google'
                icon_color: "white"
                text_color: "white"
                icon_right: "eye-off"
                pos_hint: {'center_x': 0.5, 'center_y': 0.2}
                size_hint: 0.7, None



我以为背景颜色没有改变

python background kivy kivy-language kivymd
1个回答
0
投票

您正在使用

MSCreen
的属性,但您的屏幕不是
MDScreens
。尝试将代码中的它们更改为:

class FirstWindow(MDScreen):
    pass


class SecondiWindow(MDScreen):
    pass


class WindowManager(MDScreenManager):
    pass
© www.soinside.com 2019 - 2024. All rights reserved.