Ezi*_*uka 1 animation listview list dart flutter
我想为 flutter 中的侧栏添加墨水池动画,但我不想为每个项目添加它们,有什么方法可以将墨水池添加到列表中的所有项目,而无需逐一执行,(我将其添加到第一个列表视图小部件)。如果不可能,那么是否有任何小部件可以完成这项工作?谢谢
代码 :)
class SideBar extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Drawer(
child: Column(children: <Widget>[
Container(
width: double.infinity,
padding: EdgeInsets.all(20),
color: Theme.of(context).accentColor,
child: Center(
child: Column(
children: <Widget>[
Container(
width: 100,
height: 100,
decoration: BoxDecoration(
shape: BoxShape.rectangle,
),
),
],
)),
),
InkWell(
onTap: () {},
child: ListTile(
leading: Icon(Icons.person),
title: Text('Account'),
),
),
ListTile(
leading: Icon(Icons.settings),
title: Text('Settings'),
),
ListTile(
leading: Icon(Icons.transit_enterexit),
title: Text('Exit'),
),
]),
);
}
}
Run Code Online (Sandbox Code Playgroud)
ListTile有一个onTap参数将添加相同的动画InkWell
import 'package:flutter/material.dart';
void main() {
return runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(final BuildContext context) {
return MaterialApp(
title: 'Flutter Demo',
theme: ThemeData(primarySwatch: Colors.blue),
home: MyHomePage(),
);
}
}
class MyHomePage extends StatelessWidget {
@override
Widget build(final BuildContext context) {
return Scaffold(
appBar: AppBar(title: const Text("My Home Page")),
drawer: MyDrawer(),
body: Center(child: const Text("My Home Page")),
);
}
}
class MyDrawer extends StatelessWidget {
@override
Widget build(final BuildContext context) {
return Drawer(
child: Column(children: <Widget>[
ListTile(
leading: const Icon(Icons.person),
title: const Text('Account'),
onTap: () {},
),
ListTile(
leading: const Icon(Icons.settings),
title: const Text('Settings'),
onTap: () {},
),
]),
);
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5041 次 |
| 最近记录: |