以kivy更改按钮或标签文本颜色

Mit*_*ops 16 python kivy

我正在关注这本kivy书,虽然我可以理解如何更改按钮的背景颜色,但我还没有找到关键字来更改文本颜色.

我看到了这个其他问题.这是我的代码:

#!/usr/bin/kivy
import kivy
kivy.require('1.7.2')

from random import random
from kivy.app import App
from kivy.uix.widget import Widget
from kivy.uix.gridlayout import GridLayout
from kivy.graphics import Color, Ellipse, Rectangle

class MinimalApp(App):
    title = 'My App'
    def build(self):
        root = RootLayout()
        return(root)

class RootLayout(GridLayout):
    pass

if __name__ == '__main__':
    MinimalApp().run()
Run Code Online (Sandbox Code Playgroud)

并在.kv文件中:

#:kivy 1.7.2
#:import kivy kivy

<RootLayout>:
    rows: 1
    Label:
        text: "Why does this not work?"
#        rgba: 1,0,1,1                  # doesn't work
#        Color:                         # doesn't work
#                rgba: 1,0,1,1          # doesn't work
#       font_color: rgba: 1,0,1,1
        canvas.before:
            Color:
                rgba: 0, 0, 0, 1
            Rectangle:
                pos: self.pos
                size: self.size
Run Code Online (Sandbox Code Playgroud)

fal*_*tru 29

使用color(全部小写):

<RootLayout>:
    rows: 1
    Label:
        text: "Why does this not work?"
        color: 1,0,1,1 # <-----------
        canvas.before:
            Color:
                rgba: 0, 0, 0, 1
            Rectangle:
                pos: self.pos
                size: self.size
Run Code Online (Sandbox Code Playgroud)

  • 如果您在使用此答案时遇到麻烦,则可能是canvas对象的实现。请注意,@ falsetru调用“ canvas.before”事件,而不是普通的旧“ canvas:” (3认同)