我在(支持)ViewPager中使用(支持)MapFragment,由FragmentPagerAdapter填充。
ViewPager由三个片段组成,右侧是地图片段:| x | x | map |。当我从第一个片段向右滑动时,在加载MapFragment并且屏幕闪烁时,整个UI会明显重绘。第一次加载地图后,在屏幕之间滑动可以正常工作。
我该如何解决这个问题?
答案 0 :(得分:4)
我的项目(相当复杂)结构存在同样的问题:HostActivity - >使用ViewPager的HostFragment - >带有嵌入式MapFragment的ListView。
我试图在this gmaps-api-issues thread之后解决这个问题,但没有运气(虽然我建议阅读它,因为它提供了一些关于问题的背景)。
然后我偶然发现了this blog post,它为我做了诀窍:
public void onCreate(Bundle savedInstanceState) {
...
ViewPager pager = (ViewPager)findViewById(R.id.pager);
...
pager.setAdapter(adapter);
pager.requestTransparentRegion(pager); // This line solved the problem for me
...
}