title: Confused with removeAllViewsInLayout(), postInvalidate() and refreshDrawableState()
body: <p>I am really confused with this three functions: <code>removeAllViewsInLayout()</code>, <code>postInvalidate()</code> and <code>refreshDrawableState()</code>.</p>
  
  <pre><code>removeAllViewsInLayout()
  </code></pre>
  
  <p>When I use <code>removeAllViewsInLayout()</code> in my program, all views were gone. But when trigger <code>postInvalidate()</code> to refresh, nothing. I think <code>removeAllViewsInLayout()</code> deletes all of my views. Is there a way to clear all things in my view but not delete it?</p>
  
  <pre><code>postInvalidate()
  </code></pre>
  
  <p>I want to refresh my view. But with <code>refreshDrawableState()</code>, I can do only once, why?</p>