flutter_boost icon indicating copy to clipboard operation
flutter_boost copied to clipboard

[featurePR]使FlutterBoost支持沉浸式状态栏各页面设置状态共享,保持和dart层一致的功能

Open HorseFarmer-Ma opened this issue 2 years ago • 2 comments

Old logic: 1、flutterA进入flutterB的activity,B销毁了A的platformPlugin 2、从B返回A,这个时候A页面检测到platformPlugin为空,重新创建platformPlugin【状态栏主题为初态,丢失之前的设置】; 3、A页面在onResume调用this.platformPlugin.updateSystemUiOverlays(),导致状态栏颜色重置

New logic: 1、定制FlutterBoostPlatformPlugin,destroy的时候保存状态栏状态【currentTheme和enabledOverlays】 2、创建FlutterBoostPlatformPlugin的时候进行currentTheme和enabledOverlays的恢复,保证状态栏沉浸式状态始终与dart保持同步

HorseFarmer-Ma avatar Aug 26 '22 06:08 HorseFarmer-Ma

欢迎提个PR上来哈~ 👏👏👏

0xZOne avatar Aug 30 '22 13:08 0xZOne

目前解决沉浸式的方案是,项目里继承 FlutterBoostActivity ,重新 onPostResume 方法,然后 flutter 启动这个集成的 Activity 就可以。

class MineFlutterBoostActivity : FlutterBoostActivity() {

override fun onPostResume() {
    super.onPostResume()
    window.statusBarColor = 0
}

}

silentpride avatar Sep 16 '22 09:09 silentpride

可以试试Fusion,专门针对这个问题做了处理。https://pub.flutter-io.cn/packages/fusion

gtbluesky avatar Oct 18 '22 12:10 gtbluesky