title: Detect item view on Adapter has been destroyed
body: <p>I have a ListView with a BaseAdapter. I want to update some items on the list very often without refreshing the content. In order to achieve this I'm using the Observer pattern. I have an Observable object and every item in the list is an observer.</p>
  
  <pre><code>    public View getView(final int position, View convertView, final ViewGroup parent) {
          final ItemViewHolder holder;
          final Item item = (Item) getItem(position);
          if (convertView == null) {
              convertView = inflater.inflate(R.layout.item, parent, false);
  
              /* ADD VIEWS TO HOLDER */
  
              holder = new ItemViewHolder();
  
              convertView.setTag(holder);
  
              ItemObserver observer = new ItemObserver(holder, context);
              mapObservers.put(holder, observer);
              observable.addObserver(observer);
          } else {
              holder = (ItemViewHolder) convertView.getTag();
          }
          //Set values into view etc...
          return convertView;
      }
  </code></pre>
  
  <p>This works well but the issue is: how do I know the observer is not longer needed?. I want to detect when a given view is destroyed in order to get the observer from the Map and delete it from the Observable object. Is there any listener that is called when the view is destroyed?</p>
  
  <p>I tried <code>AbsListView.RecyclerListener.onMovedToScrapHeap(View view)</code> but it seems to be called when the View is recycled.  </p>
  
  <p>Thank you!</p>