我为我的待办事项应用程序 ui 编写了一小段代码...但是每当我使用
expand=True
表示 ft.Text
或 ft.Tabs
时,它最终会将所有视图堆叠在左上角...
我在文档中找不到问题的解决方案。
这是我的代码:
import flet as ft
class App(ft.UserControl):
def __init__(self, page: ft.Page):
super().__init__()
self.page = page
self.todos_list = []
def build(self):
self.todo_input_view = ft.Row(
spacing=5,
alignment=ft.MainAxisAlignment.SPACE_BETWEEN,
controls=[
ft.TextField(
expand=True,
hint_text="Todo...",
border=ft.InputBorder.UNDERLINE,
filled=True
),
ft.IconButton(
ft.icons.ADD_TASK_ROUNDED,
icon_size=40
)
]
)
self.tabs = ft.Tabs(
expand=True,
selected_index=0,
tabs=[
ft.Tab(
text="All",
content=self.todos_list
),
ft.Tab(
text="Pending",
content=self.todos_list
),
ft.Tab(
text="Completed",
content=self.todos_list
),
]
)
return ft.Column(
expand=True,
controls=[
ft.Text(
"Todo App",
text_align=ft.TextAlign.CENTER,
size=25
),
self.todo_input_view,
self.tabs,
]
)
class Todo(ft.UserControl):
def __init__(self, page: ft.Page):
super().__init__()
self.page = page
def main(page: ft.Page):
page.theme_mode = "dark"
page.title = "Todo App"
page.window_width = 450
page.window_height = 600
page.add(App(page))
ft.app(main)
感谢您的宝贵时间!
尝试在 App 类的
self.expand=True
函数中使用 __init__
,它应该按预期工作。但不要问我为什么。
我遇到了类似的问题并在这里获得了帮助:https://github.com/flet-dev/flet/issues/2565