![Flutter实战指南](https://wfqqreader-1252317822.image.myqcloud.com/cover/384/32858384/b_32858384.jpg)
上QQ阅读APP看书,第一时间看更新
6.2 给导航页面添加按钮
在news.dart文件中,找到创建Card的地方,添加一个按钮ButtonBar。ButtonBar允许添加多个按钮并且以很好的方式排列,它有一个children参数。在children的小部件数组中添加一个按钮FlatButton。FlatButton是一个没有背景色的按钮,它有一个child参数,把Text('详情')赋值给它,然后添加一个单击事件,暂时用一个空方法,代码如下:
![](https://epubservercos.yuewen.com/DB634B/17640317207889506/epubprivate/OEBPS/Images/Figure-P84_11844.jpg?sign=1739694047-SFrqdB55rQTpQ0u3Vq5K1wXPBxd9czHD-0-3c8021ec7ededd31140dde8a81a66a60)
保存后会看到在Card上有一个详情按钮,如图6.1所示。
![](https://epubservercos.yuewen.com/DB634B/17640317207889506/epubprivate/OEBPS/Images/Figure-P84_2587.jpg?sign=1739694047-N8t1NfZeuTupuyLyN7TrhdSUOkv4Z1j0-0-3c9c6785fc2d39b1405604a2e52f27b8)
图6.1 Card中显示详情按钮
居中显示,可以在ButtonBar配置参数alignment,代码如下所示:
![](https://epubservercos.yuewen.com/DB634B/17640317207889506/epubprivate/OEBPS/Images/Figure-P85_11846.jpg?sign=1739694047-0mB18ztFJmoLV3oztlGgTmxFTwYQXzAu-0-ad32bac2c50d0a0cdc1926993b654d3f)
现在单击没有任何反应。我们在pages目录下创建一个新的页面news_detail.dart,引入material包,创建类NewsDetailPage继承StatelessWidget,在buid()方法中返回Scaffold作为一个新的页面。注意NewsDetailPage不是HomePage的一部分,然后给NewsDetailPage页面添加导航栏AppBar,标题显示“详情”,body中可以显示一行居中的文字“资讯详情页”,代码如下:
![](https://epubservercos.yuewen.com/DB634B/17640317207889506/epubprivate/OEBPS/Images/Figure-P85_11847.jpg?sign=1739694047-gWDAHKtETDviChEwO0MizaRB4eOrd5bg-0-bcf9ac848780fc83c1ef961f67f4e237)
下一节学习如何导航到这一详情页。