KivyMD MDBoxLayout 对齐问题

KivyMD MDBoxLayout Alignment Issue

MDBoxLayout 中,我试图对齐 4 个小部件。
这是我的布局代码:

class MusicPlayer(MDBoxLayout):
    def __init__(self, file):
        super().__init__(orientation='horizontal', spacing=10, padding=5, size_hint_y=None)
        
        self.file = file

        self.progress_bar = MDSlider(min=0, max=100, show_off=False)
        self.elapsed_label = MDLabel(text='0:00', size_hint_x=0.2)
        self.remaining_label = MDLabel(text='0:00', size_hint_x=0.2)

        self.add_widget(MDIconButton(icon='play', on_press=self.play_pause))
        self.add_widget(self.elapsed_label)
        self.add_widget(self.progress_bar)
        self.add_widget(self.remaining_label)

    def play_pause(self, button):
        button.icon = 'pause' if button.icon == 'play' else 'play'

结果如下:



如您所见,MDIconButton 未与其余小部件对齐,第一个 MDLabel 略高于其余小部件。非常感谢任何对齐这些小部件的帮助!

class MusicPlayer(MDBoxLayout):
    def __init__(self, **kwargs):
        super().__init__(**kwargs)
        self.spacing = 10
        self.padding = 5
        self.size_hint_y = None
        self.md_bg_color = (0, 1, 1, 0.3)

        self.progress_bar = MDSlider(min=0, max=100, show_off=False)

        self.elapsed_label = MDLabel(text='0:00', pos_hint={"center_y": 0.5}, size_hint=(None, None))
        self.elapsed_label.text_size = (None, None)
        self.elapsed_label.height = self.elapsed_label.texture_size[1]

        self.remaining_label = MDLabel(text='0:00', pos_hint={"center_y": 0.5}, size_hint=(None, None))
        self.remaining_label.text_size = (None, None)
        self.remaining_label.height = self.remaining_label.texture_size[1]

        self.add_widget(MDIconButton(icon='play', pos_hint={"center_y": 0.5}))
        self.add_widget(self.elapsed_label)
        self.add_widget(self.progress_bar)
        self.add_widget(self.remaining_label)