Основное направление, на которое указывает документация Flet, — это использование пользовательских элементов управления при попытке создания пользовательских виджетов/элементов управления. UserControl сам по себе наследуется от Stack, а также имеет метод сборки, который можно использовать для возврата чего-то отличного от Stack.
Но если да, то почему бы просто не наследовать, скажем, от Stack Контейнер? Я использую следующий код:
Код: Выделить всё
class ArrowButton(Container):
def __init__(self, arrow_icon: Icons):
super().__init__(
height=100,
width=100,
bgcolor=Colors.WHITE,
border_radius=500,
content=Icon(
name=arrow_icon,
size=100,
color=Colors.BLACK,
)
)
Я также могу добавить методы для изменения состояния, поэтому не понимаю, зачем мне конкретно нужен UserControl + его метод сборки. На самом деле, у меня есть другой проект, в котором я создал собственную систему вкладок (похожую на веб-браузер), где все пользовательские классы (их 4) наследуются от Container, и все работает точно так, как задумано.
Итак, какая цель/вариант использования потребует использования UserControl вместо какого-либо другого виджета? Есть ли какой-то специфический для Flutter нюанс, который мне здесь не хватает?
Подробнее здесь:
https://stackoverflow.com/questions/782 ... her-widget