Как изменить ширину MDDialog?

from kivy.uix.boxlayout import BoxLayout
from kivymd.app import MDApp
from kivymd.uix.button import MDFlatButton
from kivymd.uix.dialog import MDDialog
from kivymd.uix.textfield import MDTextField
from kivymd.uix.button import MDFlatButton, MDRaisedButton
class Example(MDApp):
    def build(self):
        bl=BoxLayout(orientation='vertical', height='50dp',width=100, spacing='10dp')
        bl.add_widget(MDTextField(hint_text="79876543210", max_text_length= 11))
        dialog = MDDialog(title='Авторизация',radius=[20, 7, 20, 7], content_cls=bl, type='custom',
            buttons=[MDFlatButton(text='Отмена', text_color=self.theme_cls.primary_color),
            MDRaisedButton(text='Подтвердить', text_color=self.theme_cls.primary_color)])
        dialog.open()
Example().run()

Есть такой код, как поменять ширину диалога? Пытался задать в боксе, но бесполезно, у самого диалога никаких параметров ширины нет, если я его не пропустил.


Ответы (1 шт):

Автор решения: Xyanight

Элементарно. Используйте свойство size_hint_x:

from kivy.uix.boxlayout import BoxLayout

from kivymd.app import MDApp
from kivymd.uix.dialog import MDDialog
from kivymd.uix.textfield import MDTextField
from kivymd.uix.button import MDFlatButton, MDRaisedButton


class Example(MDApp):
    def build(self):
        bl = BoxLayout(
            orientation="vertical", height="50dp", width=100, spacing="10dp"
        )
        bl.add_widget(MDTextField(hint_text="79876543210", max_text_length=11))
        dialog = MDDialog(
            title="Авторизация",
            radius=[20, 7, 20, 7],
            content_cls=bl,
            type="custom",
            size_hint_x=0.9,
            buttons=[
                MDFlatButton(
                    text="Отмена", text_color=self.theme_cls.primary_color
                ),
                MDRaisedButton(
                    text="Подтвердить", text_color=self.theme_cls.primary_color
                ),
            ],
        )
        dialog.open()


Example().run()
→ Ссылка