Flutter应用在安卓系统切换切换导航栏后会出现页面显示不正常

我的flutter应用的release包在部分安卓手机上会出现页面显示不正常的情况,复现操作是应用在后台运行时,切换系统导航栏(在虚拟导航栏和全面屏手势之间切换),然后重新进入应用,就会出现这个问题。这个问题在debug的时候不会出现,而在release包安装后会出现,而且通过Android Studio输出的信息并没有看到有报错。而在vivo x30 pro这款机型上甚至不需要切换导航栏就会出现这个问题,打开10次应用只有1次能页面显示正常。但在华为P20中一切正常,就算切换导航栏也不会出现这个问题。

以下是正常的页面状态

以下是显示异常时的页面状态

可以看到界面中右上角的‘跳过’按钮消失了,dialog也显示异常

这个页面很简单,就是普通的Stack布局,最外层是Expanded,具体代码如下

Scaffold(
      body: Column(
        children: <Widget>[
          Expanded(
              child: Stack(
            children: <Widget>[
              PageView.builder(
                itemCount: imagePathList.length,
                itemBuilder: (mContext, index) {
                    return Image.asset(
                      imagePathList[index],
                      fit: BoxFit.fill,
                    );
                },
              ),
              Positioned(
                  right: 12,
                  top: MediaQuery.of(context).padding.top + 10,
                  child: HintText30(
                    '跳过  >',
                    click: () {
                      LxSpUtil.setIsNotFirst(true);
                      RouterUtil.instance
                          .pushReplacement(context, widget.nextPage);
                    },
                  ))
            ],
          ))
        ],
      ),
    );

dialog是在onResume中调用的

@override
  void onResume() {
    // TODO: implement onResume
    super.onResume();
    _showTipDialog();
  }

有没有大牛遇到过这种问题,能够给我一点解决问题的思路。

讨论数量: 1

我也遇到了同样的问题。

2年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!