我使用垂直ViewPager
同時使用setAdapter
我檢查是否verticalViewPager
和arrayPagerAdapter
是空或沒有,但還是我越來越logcat的例外下方少數設備但不是所有設備。只有少數設備獲取NullPointerException異常,同時使用setAdapter
Fatal Exception: java.lang.NullPointerException: Attempt to invoke virtual method 'android.os.Handler android.support.v4.app.FragmentHostCallback.getHandler()' on a null object reference
at android.support.v4.app.FragmentManagerImpl.execSingleAction(FragmentManager.java:1623)
at android.support.v4.app.BackStackRecord.commitNowAllowingStateLoss(BackStackRecord.java:637)
at android.support.v4.app.FragmentStatePagerAdapter.finishUpdate(FragmentStatePagerAdapter.java:166)
at com.inheadline.news.view.viewpager.VerticalViewPager.setAdapter(VerticalViewPager.java:278)
at com.inheadline.news.activity.MainActivity.setupViewPager(MainActivity.java:487)
at com.inheadline.news.activity.MainActivity.dataAdded(MainActivity.java:557)
at com.inheadline.news.db.operation.DataSnapshotToDb$AddToDb.onPostExecute(DataSnapshotToDb.java:163)
at com.inheadline.news.db.operation.DataSnapshotToDb$AddToDb.onPostExecute(DataSnapshotToDb.java:138)
at android.os.AsyncTask.finish(AsyncTask.java:679)
at android.os.AsyncTask.access$500(AsyncTask.java:180)
at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:696)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:150)
at android.app.ActivityThread.main(ActivityThread.java:5546)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:794)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:684)
這裏是我的代碼,同時設置視圖尋呼機:
if (verticalViewPager != null && arrayPagerAdapter != null) {
verticalViewPager.setAdapter(arrayPagerAdapter);
verticalViewPager.setSwipable(true);
verticalViewPager.setOnPageChangeListener(pageChangeListener);
}
在上面的代碼中MainActivity.java:487
是verticalViewPager.setAdapter(arrayPagerAdapter);
老兄完整的適配器類和異步類 – Rahul
你也可以發佈你的gradle依賴關係嗎? –
@Rahul我在Async類上沒有做太多事情。對於適配器im從這個https://github.com/takaaki7/ArrayPagerAdapter獲得幫助,並使用此鏈接中的ArrayFragmentPagerAdapter –