title: Auto Scale TextView Text to Fit within Bounds
body: <p>I'm looking for an optimal way to resize wrapping text in a <code>TextView</code> so that it will fit within its getHeight and getWidth bounds. I'm not simply looking for a way to wrap the text- I want to make sure it both wraps and is small enough to fit entirely on the screen. </p>
  
  <p>I've seen a few cases on StackOverflow where auto resizing was needed, but they are either very special cases with hack solutions, have no solution, or involve re-drawing the <code>TextView</code> recursively until it is small enough (which is memory intense and forces the user to watch the text shrink step-by-step with every recursion). </p>
  
  <p>But I'm sure somebody out there has found a good solution that doesn't involve what I'm doing: writing several heavy routines that parse and measure the text, resize the text, and repeat until a suitably small size has been found. </p>
  
  <p>What routines does <code>TextView</code> use to wrap the text? Couldn't those be somehow used to predict whether text will be small enough?</p>
  
  <p><strong>tl;dr</strong>: is there a best-practice way to auto-resize a <code>TextView</code> to fit, wrapped, in its getHeight and getWidth bounds?</p>