from kivy.uix.label import Label
from kivy.graphics import Color, Rectangle
class TitleLineWidget(Label):
def __init__(self, title, text_align='center', **kwargs):
super(TitleLineWidget, self).__init__(**kwargs)
self.text = title
self.text_align = text_align
self.bind(size=self.update_line)
with self.canvas.before:
Color(0.2, 0.7, 0.3, 1)
self.rect = Rectangle(pos=self.pos, size=self.size)
def update_line(self, instance, value):
if self.text_align == 'left':
self.text_size = (self.width - 40, self.height - 810)
self.text_pos = (self.x, self.center_y)
elif self.text_align == 'right':
self.text_size = (self.width - 1778, self.height - 810)
self.text_pos = (self.x, self.center_y)
class TitleLineApp(App):
def build(self):
title_line_widget = TitleLineWidget(title="text", text_align='right')
return title_line_widget
if __name__ == "__main__":
TitleLineApp().run()