[英]Long Press on BottomNavigationBarItem
有什么方法可以处理Flutter中BottomNavigationBar上的长按项目吗?
我看到了“ onTap”事件处理程序,但没有别的东西,而且我也无法将Items包装到GestureDetector中。
我可以将整个BottomNavigationBar部分包装到GestureDetector中,但是在这种情况下,无法知道按下了哪个项目:-/
提前致谢!
几天之后,我终于了解了如何实现它:您只需(几乎总是)将底部导航栏项的Icon和Text包裹到GestureDetector小部件中,它就可以工作了:)
该代码段将是:
new BottomNavigationBarItem(
icon: GestureDetector(
onLongPress: (){print("long tap icon");
setState(() {
_resetSct(context, i);
});
},
child: new Image.memory([skiped])), //Icon(Icons.looks_one),//photos[0].icon,
title: GestureDetector(
onLongPress: (){print("long tap title");
setState(() {
//do stuff
});
},
child: Text([skipped]))
我建议您使用Flutter创建自定义的底部导航栏,因为它很容易做到。
注意:无法使用默认的BottomNaivgationBarItem来执行所需的操作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.