title: how to resolve UnsupportedOperationException Required method destroyItem was not overridden
body: <p>Though I have override <code>destroyItem(...)</code> in <code>PagerAdapter</code> getting an error while sliding pages in <code>ViewPager</code> </p>
  
  <blockquote>
    <p>UnsupportedOperationException Required method destroyItem was not
    overridden</p>
  </blockquote>
  
  <p><strong>Java code</strong></p>
  
  <pre><code>public class PropertyPagerAdapter extends PagerAdapter {
  
      private Context _context;
      private int layoutId;
      private List&lt;AddPropertyInfo&gt; dataList;
  
      public PropertyPagerAdapter(Context context,
              int resourceId, List&lt;AddPropertyInfo&gt; objects) {
          // TODO Auto-generated constructor stub
          _context = context;
          layoutId = resourceId;
          dataList = objects;
      }
  
      @Override
      public int getCount() {
          // TODO Auto-generated method stub
          return dataList.size();
      }
  
      @Override
      public boolean isViewFromObject(View v, Object obj) {
          // TODO Auto-generated method stub
          return v == ((View) obj);
      }
  
      @Override
      public void destroyItem(ViewGroup container, int position, Object object) {
          // TODO Auto-generated method stub
          super.destroyItem(container, position, object);
          ((ViewPager) container).removeView((View) object);
      }
  
      @SuppressLint("DefaultLocale")
      @Override
      public Object instantiateItem(ViewGroup container, int position) {
          // TODO Auto-generated method stub
          LayoutInflater inflater = (LayoutInflater) _context.getSystemService(
                  Context.LAYOUT_INFLATER_SERVICE);
          View pagerView = inflater.inflate(layoutId, container, false);
          TextView propertyNameTxtView = (TextView) pagerView.
                  findViewById(R.id.propertyNameTxtView);
          TextView netIncomeTxtView = (TextView) pagerView.
                  findViewById(R.id.netIncomeTxtView);
          TextView netIncomeValueTxtView = (TextView) pagerView.
                  findViewById(R.id.netIncomeValueTxtView);
          TextView netExpTxtView = (TextView) pagerView.
                  findViewById(R.id.netExpTxtView);
          TextView netExpValueTxtView = (TextView) pagerView.
                  findViewById(R.id.netExpValueTxtView);
          TextView netProfitTxtView = (TextView) pagerView.
                  findViewById(R.id.netProfitTxtView);
          TextView netProfitValueTxtView = (TextView) pagerView.
                  findViewById(R.id.netProfitValueTxtView);
  
          propertyNameTxtView.setTypeface(Utils.getRegularTypeface(_context));
          netIncomeTxtView.setTypeface(Utils.getRegularTypeface(_context));
          netIncomeValueTxtView.setTypeface(Utils.getRegularTypeface(_context));
          netExpTxtView.setTypeface(Utils.getRegularTypeface(_context));
          netExpValueTxtView.setTypeface(Utils.getRegularTypeface(_context));
          netProfitTxtView.setTypeface(Utils.getRegularTypeface(_context));
          netProfitValueTxtView.setTypeface(Utils.getRegularTypeface(_context));
  
          String propertyName = "";
          double netIncomeVal;
          double netExpVal;
          double netProfitVal;
  
          AddPropertyInfo addPropertyInfo = dataList.get(position);
          netIncomeVal = addPropertyInfo.getIncomeAmnt();
          netExpVal = addPropertyInfo.getExpAmnt();
          netProfitVal = netIncomeVal - netExpVal;
          propertyName = addPropertyInfo.getPropertyName();
  
          String netIncomeValStr = String.format("%.2f", netIncomeVal);
          String netExpValStr = String.format("%.2f", netExpVal);
          String netProfitValStr = String.format("%.2f", netProfitVal);
  
          propertyNameTxtView.setText(propertyName);
          netIncomeValueTxtView.setText(_context.getResources().
                  getString(R.string.doller) + netIncomeValStr);
          netExpValueTxtView.setText(_context.getResources().
                  getString(R.string.doller) + netExpValStr);
          netProfitValueTxtView.setText(_context.getResources().
                  getString(R.string.doller) + netProfitValStr);
  
          ((ViewPager) container).addView(pagerView);
  
          return pagerView;
      }
  }
  </code></pre>
  
  <p><strong>Error log</strong></p>
  
  <pre><code>10-30 18:59:11.711: E/AndroidRuntime(27093): FATAL EXCEPTION: main
  10-30 18:59:11.711: E/AndroidRuntime(27093): Process: com.teklabs.portfoliomanagenent, PID: 27093
  10-30 18:59:11.711: E/AndroidRuntime(27093): java.lang.UnsupportedOperationException: Required method destroyItem was not overridden
  10-30 18:59:11.711: E/AndroidRuntime(27093):    at android.support.v4.view.PagerAdapter.destroyItem(PagerAdapter.java:192)
  10-30 18:59:11.711: E/AndroidRuntime(27093):    at android.support.v4.view.PagerAdapter.destroyItem(PagerAdapter.java:124)
  10-30 18:59:11.711: E/AndroidRuntime(27093):    at com.teklabs.portfoliomanagenent.adapter.PropertyPagerAdapter.destroyItem(PropertyPagerAdapter.java:47)
  10-30 18:59:11.711: E/AndroidRuntime(27093):    at android.support.v4.view.ViewPager.populate(ViewPager.java:1002)
  10-30 18:59:11.711: E/AndroidRuntime(27093):    at android.support.v4.view.ViewPager.populate(ViewPager.java:914)
  10-30 18:59:11.711: E/AndroidRuntime(27093):    at android.support.v4.view.ViewPager$3.run(ViewPager.java:244)
  10-30 18:59:11.711: E/AndroidRuntime(27093):    at android.view.Choreographer$CallbackRecord.run(Choreographer.java:803)
  10-30 18:59:11.711: E/AndroidRuntime(27093):    at android.view.Choreographer.doCallbacks(Choreographer.java:603)
  10-30 18:59:11.711: E/AndroidRuntime(27093):    at android.view.Choreographer.doFrame(Choreographer.java:572)
  10-30 18:59:11.711: E/AndroidRuntime(27093):    at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:789)
  10-30 18:59:11.711: E/AndroidRuntime(27093):    at android.os.Handler.handleCallback(Handler.java:733)
  10-30 18:59:11.711: E/AndroidRuntime(27093):    at android.os.Handler.dispatchMessage(Handler.java:95)
  10-30 18:59:11.711: E/AndroidRuntime(27093):    at android.os.Looper.loop(Looper.java:157)
  10-30 18:59:11.711: E/AndroidRuntime(27093):    at android.app.ActivityThread.main(ActivityThread.java:5356)
  10-30 18:59:11.711: E/AndroidRuntime(27093):    at java.lang.reflect.Method.invokeNative(Native Method)
  10-30 18:59:11.711: E/AndroidRuntime(27093):    at java.lang.reflect.Method.invoke(Method.java:515)
  10-30 18:59:11.711: E/AndroidRuntime(27093):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1265)
  10-30 18:59:11.711: E/AndroidRuntime(27093):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1081)
  10-30 18:59:11.711: E/AndroidRuntime(27093):    at dalvik.system.NativeStart.main(Native Method)
  </code></pre>
  
  <p>How to resolve it?</p>