2016-07-14 80 views
0

我正在使用Android Tutorial Bubbles library在我的UI中添加引用视图的信息性气泡。我的主UI包含三个使用ViewPager的选项卡。我希望第二个选项卡的教程仅在用户导航到该选项卡时才开始。我可以使用OnPageChangeListener来捕捉用户导航到该选项卡的事件。Android ViewPager onPageSelected()发射得太早

问题是onPageSelected()方法在视图位于正确位置之前触发,这意味着应该包围感兴趣视图的高亮显示的区域发生了明显偏移。我可以在短时间内使用Thread.sleep()来解决这个问题;有没有更好的方法来处理这个问题?

这里是我的代码:

viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() { 
     @Override 
     public void onPageSelected(int position) { 
      if (position == 1) { 
       sensorReadingFragment.showTutorial(); 
      } 
     } 
    }); 
+0

据我了解,你要等到动画结束..你见过吗? http://stackoverflow.com/questions/10892403/android-viewpager-animation –

+1

这个词完美。非常感谢你 – Sean

回答

0

好吧,你可以推迟它作为

pager.post(new Runnable() { 
     @Override 
     public void run() { 
      pager.setCurrentItem(position_tab); 
      // Perform your operations 
     } 
    });