Expanded(
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
_titleWrapper(context, this.title),
_viewCountWrapper(this.viewCount.toString()),
],
),
)
],
),
),
onTap: () async {
Map<String, dynamic> routeParams = {‘id’: id};
var arguments = await Navigator.of(context)
.pushNamed(RouterTable.dynamicDetail, arguments: routeParams);
ScaffoldMessenger.of(context).showSnackBar(SnackBar(
content: Text(“从动态${(arguments as Map<String, dynamic>)[‘id’]}返回”),
));
},
);
}
这里还使用了一个 arguments
变量 接收导航返回的参数,导航若有返回参数,会返回一个 Future
对象,使用 await
即可接收。然后在使用 as
转换为实际的类型进行使用。 在详情页中,Flutter 提供了一个ModalRoute
的类从当前上下文获取路由配置参数,代码如下所示:
class DynamicDetail extends StatelessWidget {
const DynamicDetail({Key k