我想在Flutter中创建一个动画的可扩展列表,这样每当用户点击列表项时,它就会展开并开始显示单击的组件的子树。同时,通过动画,如果主列表项在单击项之前,则向上移动,如果在单击项下方,则向下移动,直到转换结束,此时我们可以ONLY看到单击项的子树,并且不再显示所有主列表项。你可以从下面的步骤中领会一个想法。
Normal View: On item click (**): After Clicking
------ ------ (Go up ) Shows only the subtree
------ ------ (Go up)
------ **-----** (Expands)
------ -> Starts showing
subtree
------ (Go down)
您只需要一个扩展程序列表。
ListView.builder(
itemBuilder: (context, i) {
return ExpansionTile(
title: Text("List tile $i"),
children: [
ListTile(
title: Text("List tile $i.1"),
),
ListTile(
title: Text("List tile $i.2"),
),
ListTile(
title: Text("List tile $i.3"),
)
],
);
},
itemCount: 100,
)