Quando una Activity riceve il focus, le verrà richiesto di disegnare il suo layout.
Questo consiste in due passi:

Il disegno è gestito attraversando l’albero e renderizzando ogni View che interseca la “invalid region”, che è la regione dove la view deve essere disegnata.
Ogni ViewGroup è responsabile di richiedere che tutti i suoi figli vengano disegnati (con il metodo draw()).
Ogni View è responsabile di disegnarsi.

E’ possibile definire componenti custom che possono essere usati sia dal codice sia dagli elementi XML. Per creare componenti completamente customizzabili:
public View(Context context)public View(Context context, AttributeSet attrs)onDraw() per disegnare la viewPer esempio, è possibile definire custmo components che cambiando le progress bar:


progressDrawable: si tratta di un attributo usato in Android per settare un custom drawable per la progress mode