2014-06-19 26 views
0

我在這裏有一個奇怪的問題後返回null,我有一個對話片段和這個方法裏面:onPageScrolled方法改變爲最新的支持-V4庫

@Override 
    public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { 

     currentPosition = position; 
     currentPositionOffset = positionOffset; 

     scrollToChild(position, (int) (positionOffset * 
tabsContainer.getChildAt(position).getWidth())); 

     invalidate(); 

     if (delegatePageListener != null) { 
      delegatePageListener.onPageScrolled(position, 
positionOffset, positionOffsetPixels); 
     } 
    } 

當我使用支持 - 一箇舊版本v4.jar它工作正常,但是當我使用它的最新版本,這個方法:

scrollToChild(position, (int) (positionOffset * 
tabsContainer.getChildAt(position).getWidth())); 

返回此錯誤:

06-19 11:56:23.764: E/AndroidRuntime(1024): java.lang.NullPointerException 
06-19 11:56:23.764: E/AndroidRuntime(1024): at   
com.astuetz.PagerSlidingTabStrip$PageListener.onPageScrolled 
(PagerSlidingTabStrip.java:361) 
06-19 11:56:23.764: E/AndroidRuntime(1024): at 
android.support.v4.view.ViewPager.onPageScrolled(ViewPager.java:1712) 
06-19 11:56:23.764: E/AndroidRuntime(1024): at 
android.support.v4.view.ViewPager.pageScrolled(ViewPager.java:1633) 
06-19 11:56:23.764: E/AndroidRuntime(1024): at 
android.support.v4.view.ViewPager.scrollToItem(ViewPager.java:581) 
06-19 11:56:23.764: E/AndroidRuntime(1024): at 
android.support.v4.view.ViewPager.onLayout(ViewPager.java:1600) 

你明白什麼是錯的?

+0

我的猜測是位置爲空,但我該怎麼做,爲什麼會發生這種情況! – user3694470

回答

2

這可能是幫助。

https://github.com/astuetz/PagerSlidingTabStrip/issues/69

我只是想出了同樣的問題,一個小的測試後,我證實其原因是沒有項目內PagerSlidingTabStrip顯示。

如果你確定你有應顯示的數據,在PagerSlidingTabStrip,也許你忘了叫PagerSlidingTabStrip.notifyDataSetChanged();

希望這可以幫助你!