title: java.lang.IllegalArgumentException: The observer is null
body: <p>A user of one of my apps reported this error.  I'm confused as to what it means an how to fix it.  After a bit of googling...still no luck.  Anyone seen this before or know how to fix it?</p>
  
  <pre><code>java.lang.IllegalArgumentException: The observer is null.
  at android.database.Observable.unregisterObserver(Observable.java:59)
  at android.widget.BaseAdapter.unregisterDataSetObserver(BaseAdapter.java:42)
  at android.widget.HeaderViewListAdapter.unregisterDataSetObserver(HeaderViewListAdapter.java:256)
  at android.widget.AbsListView.onDetachedFromWindow(AbsListView.java:2309)
  at android.view.View.dispatchDetachedFromWindow(View.java:8197)
  at android.view.ViewGroup.dispatchDetachedFromWindow(ViewGroup.java:1968)
  at android.view.ViewGroup.dispatchDetachedFromWindow(ViewGroup.java:1966)
  at android.view.ViewGroup.removeViewInternal(ViewGroup.java:3257)
  at android.view.ViewGroup.removeViewInternal(ViewGroup.java:3237)
  at android.view.ViewGroup.removeView(ViewGroup.java:3185)
  at com.aheudev.a.slickdeals.adapters.DealPageAdapter.destroyItem(DealPageAdapter.java:174)
  at android.support.v4.view.ViewPager.populate(ViewPager.java:415)
  at android.support.v4.view.ViewPager.completeScroll(ViewPager.java:696)
  at android.support.v4.view.ViewPager.computeScroll(ViewPager.java:668)
  at android.view.ViewGroup.drawChild(ViewGroup.java:2434)
  at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2189)
  at android.view.View.draw(View.java:9282)
  at android.view.ViewGroup.drawChild(ViewGroup.java:2584)
  at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2189)
  at android.view.ViewGroup.drawChild(ViewGroup.java:2582)
  at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2189)
  at android.view.ViewGroup.drawChild(ViewGroup.java:2582)
  at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2189)
  at android.view.View.draw(View.java:9282)
  at android.widget.FrameLayout.draw(FrameLayout.java:419)
  at com.android.internal.policy.impl.PhoneWindow$DecorView.draw(PhoneWindow.java:1923)
  at android.view.ViewRoot.draw(ViewRoot.java:1695)
  at android.view.ViewRoot.performTraversals(ViewRoot.java:1410)
  at android.view.ViewRoot.handleMessage(ViewRoot.java:2040)
  at android.os.Handler.dispatchMessage(Handler.java:99)
  at android.os.Looper.loop(Looper.java:132)
  at android.app.ActivityThread.main(ActivityThread.java:4123)
  at java.lang.reflect.Method.invokeNative(Native Method)
  at java.lang.reflect.Method.invoke(Method.java:491)
  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:841)
  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:599)
  at dalvik.system.NativeStart.main(Native Method)
  </code></pre>
  
  <p>And it came from this function in my PagerAdapter:</p>
  
  <pre><code>@Override
  public void destroyItem(View collection, int position, Object view) {
      ((ViewPager) collection).removeView((View) view);
  }
  </code></pre>