解决Fragment+百度地图会出现黑屏闪屏的现象

来源:互联网 发布:linux如何关闭tomcat 编辑:程序博客网 时间:2024/06/11 01:04

问题描述:在开发一款app时,用了4个fragment切换,其中一个里面有地图,但是发现从地图的fragment切换到其他的fragment会出现黑屏闪一下的情况,百度了下好像没有什么办法(还是我没搜到??)??

解决方法:

实验过程中发现只要有重新加载fragment的动作,就会闪一下想着能不能把黑屏改成白屏,这样看起来就不明显了。

然后找了一个办法,用2个FrameLayout加载fragment,手动去切换FrameLayout的可见属性。这样用replace的时候就不会去重新加载地图对应的fragment。

    case R.id.rb_charging:                    fl_content_white.setVisibility(View.INVISIBLE);                        fl_content.setVisibility(View.VISIBLE);                        if (charging == null){                            charging = new Charging();                        }                        transaction.replace(R.id.fl_base_content,charging,CHARGING);                        break;                    case R.id.rb_information:                    fl_content_white.setVisibility(View.VISIBLE);                        fl_content.setVisibility(View.INVISIBLE);                        if (inf == null){                            inf = new Information();                        }//    此处将Fragment移除后还会出现闪屏的现象    transaction.replace(R.id.fl_base_content_white,inf,INF);

但是这样会出现另一个问题,就是地图不会做重新加载的动作(毕竟只是隐藏了显示),所以后续进行其他操作的时候需要注意一下了。


0 0