2012-07-09 31 views
1

過程中出現長時間的延遲我有一個非常類似的問題: ViewPager + SurfaceView = long delay when navigating back to activitySurfaceView與ViewPager API等級10有一個新的轉變

除了我使用的API 10,因此我不使用的片段。

我在ViewPager中有SurfaceViews - 除了當我滾動到一個新頁面時需要一段時間來繪製,我已經很好地工作了。直到SurfaceView在屏幕上可見時才調用SurfaceView.surfaceCreated方法。我希望在調用ViewPager的PagerAdapter.instantiateItem時創建表面,並通過addView將SurfaceView添加到ViewPager中。有沒有辦法強制SurfaceView在這一點上創建曲面?

我使用基於Awesome Pager example

 @Override 
     public Object instantiateItem(View collection, int position) { 
      Log.i("Main Activity", "instantiateItem p:" + position); 
      View p; 
      if(position == 1){ 
        // Page003 is a surfaceview 
       p = new Page003(cxt, position); 
      } else { 
        // in the future I will create more pages! 
       p = new Page003(cxt, position); 
      } 
      ((ViewPager) collection).addView(p); 

      return p; 
     } 

代碼是否有類似的其他問題的答案的方法 - 通過另一種看法環繞的SurfaceView?我寧願不要不必要地使代碼複雜化。

回答

0

實施onAttached()在Viewpager適配器 運行持續2秒這就是一個處理機它

這將加載面後2秒沒有更多的滯後