Sono nuovo nello sviluppo di Android, sto solo leggendo i documenti e provando le API . Ho smesso di confondere come ImageView sia riuscita a disegnare solo una parte di il suo contenuto dopo un'invocazione invalida (Rect).In che modo ImageView ridisegna semplicemente parte del suo contenuto quando viene chiamato invalidate (Rect)?
Ho controllato ImageView.java, trovato nessun altro metodo di disegno, tranne OnDraw (Canvas), ma OnDraw (Canvas) tagliare solo la drawable solo se è beyound confine visibile della vista. Ho letto anche l'implementazione di View.invalidate (Rect), penso che la chiave di questa funzione stia chiamando a mParent.invalidateChild (this, r); Tuttavia, penso che la vista genitore non sappia come disegnare il bambino in il Rect dato, alla fine deve chiamare un metodo di esso child a paint out.
Qualcuno ha studiato questa parte dei codici? Potresti darmi una guida, per favore, ?
-1 poiché entrambi i collegamenti sono morti. Includere parte del loro contenuto qui sarebbe stato meglio. –
+1 perché i collegamenti non sono morti ... li ho appena testati. Tuttavia, sono d'accordo che l'aggiunta di contenuti è una buona cosa da fare in casi come questo. – Justin