In Kivy programming, where should buttons be created/resized/repositioned in a class created to be used other classes?

Viewed 24
#This class is to be used with other classes of widgets, not with the class of kivy.app.

class TempatureFloatLayout(FloatLayout):

    tempature = NumericProperty()

    def __init__(self, **kwargs):       
        super().__init__(**kwargs)

        Clock.schedule_interval(self.update, 1)
        
        self.btn = Button()
                         
        self.btn.bind(on_press=self.do_something)
                         
        
        self.add_widget(self.btn)

        
    def do_something(self, self_button):
        pass


    def update(self, dt):
        
        self.btn.size = self.size  # I can only resize and reposition the button here.
        self.btn.pos = self.pos    # pos and size are assigned with the pos and size
                                   # values of the widget used


        ... the other codes 

class TempatureFloatLayout(FloatLayout) can be used successfully in other classes. The code works correctly as it is. But, When every update, the position and size of the button is to be resized and repositioned. This doesn't feel right to me. How to bind a widget that is used and a button that is used in a different class. Where did I do wrong or is this usage correct?

0 Answers
Related