如何解决Flutter Inherited Custom AppBar 在 TextField 点击时消失
我在 Scaffold 中使用自定义 appBar 和 bottomNavigationBar,按照以下代码:
return Scaffold(
appBar: logoAppBar(),drawer: topDrawer(),body: _pageOptions[_selectedTab],bottomNavigationBar: BottomNavigationBar(...)
当我通过 BottomNavigationBar 导航时,自定义 AppBar 会固定在新屏幕的顶部,就像我想要的那样。
但是,当我导航并随后点击新屏幕上的 TextField 以输入一些文本时,继承的 AppBar 会自动消失(当键盘出现时)。
此屏幕的完整代码相当长,因此在此处发布相当不切实际,但基本上可以归结为以下内容:
return Scaffold(
backgroundColor: Colors.white,body: Column(
children: [
Container(
Column(
children: [
DropDownButton(...),TextField(...),// with a textSearchController
],Expanded(
child: Listviewbuilder(...) // showing a list based on the search
有没有办法让继承的类中的 AppBar 保持不变,而无需在我导航到的类的 Scaffold 中放置新的 appBar?
解决方法
尝试删除 Scaffold,因为您已经在主屏幕中调用了一次。
return Column(
children: [
Container(
Column(
children: [
DropDownButton(...),TextField(...),// with a textSearchController
],Expanded(
child: ListViewBuilder(...)
,
Ujjwal 的建议非常有帮助。我删除了 Scaffold,不幸的是问题仍然存在,但它让我意识到我还在 Scaffold 中包装了 LogoAppBar() 代码。一旦我从 LogoAppBar() 中删除了 Scaffold,一切都奏效了!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。