【问题标题】:MapFragment causes flickering in ViewPagerMapFragment 导致 ViewPager 中闪烁
【发布时间】:2013-08-02 20:42:18
【问题描述】:
我在 (Support)ViewPager 中使用 (Support)MapFragment,由 FragmentPagerAdapter 填充。
ViewPager 由三个片段组成,地图片段在右侧:|x|x|map|。当我从第一个片段向右滑动时,随着 MapFragment 的加载和屏幕闪烁,整个 UI 明显重绘。首次加载地图后,在屏幕之间滑动即可正常工作。
我该如何解决这个问题?
【问题讨论】:
标签:
android
google-maps-android-api-2
【解决方案1】:
我的项目(相当复杂)结构也有同样的问题: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
...
}