Qualcuno potrebbe dirmi qual è la differenza tra setBackgroundResource(resourceid)
e setBackgroundDrawable(getResource().getDrawable(drawableid))
in Android?Qual è la differenza tra setBackgroundResource e setBackgroundDrawable
7
A
risposta
7
Puoi dare un'occhiata allo Android source code for the View class e scoprire che c'è poca differenza!
public void setBackgroundResource(int resid) {
if (resid != 0 && resid == mBackgroundResource) {
return;
}
Drawable d= null;
if (resid != 0) {
d = mResources.getDrawable(resid);
}
setBackground(d);
mBackgroundResource = resid;
}
E setBackground()
chiamate solo attraverso setBackgroundDrawable()
...
public void setBackground(Drawable background) {
//noinspection deprecation
setBackgroundDrawable(background);
}
+0
Direttamente dalla bocca del droide. – samosaris
Problemi correlati
- 1. Qual è la differenza tra = e: =
- 2. Qual è la differenza tra Verilog! e ~?
- 3. Qual è la differenza tra? : e ||
- 4. qual è la differenza tra [[], []] e [[]] * 2
- 5. Qual è la differenza tra $ e $$?
- 6. Qual è la differenza tra ("") e (null)
- 7. Qual è la differenza tra dict() e {}?
- 8. Qual è la differenza tra " " e ""?
- 9. Qual è la differenza tra {0} e ""?
- 10. Qual è la differenza tra `##` e `hashCode`?
- 11. Qual è la differenza tra {0} e +?
- 12. Qual è la differenza tra .ToString() e + ""
- 13. qual è la differenza tra:.! e: r !?
- 14. Qual è la differenza tra "è Nessuno" e "== Nessuno"
- 15. Unix: Qual è la differenza tra la fonte e l'esportazione?
- 16. Qual è la differenza tra il callback e la promessa
- 17. Qual è la differenza tra la sezione .got e .got.plt?
- 18. Qual è la differenza tra la lista() e []
- 19. Qual è la differenza tra GHC e la piattaforma Haskell?
- 20. Qual è la differenza tra sé e la finestra?
- 21. Qual è la differenza tra la cartella vim72 e vimfiles?
- 22. Qual è la differenza tra la serratura e RLock
- 23. Qual è la differenza tra la funzione() {}() e function() {}()
- 24. Qual è la differenza tra la crittografia SHA e AES?
- 25. Qual è la differenza tra la [OptionalField] e [NonSerialized]
- 26. Qual è la differenza tra Chisel e Lava e CLaSH?
- 27. Qual è la differenza tra queste funzioni
- 28. Qual è la differenza tra queste funzioni?
- 29. Qual è la differenza tra Response.Write() eResponse.Output.Write()?
- 30. Qual è la differenza tra applicationDidReceiveMemoryWarning, didReceiveMemoryWarning?
Le due linee che hai fornito - nessuna differenza. Tuttavia si noti che 'setBackgroundDrawable' non deve ottenere un drawable dalle risorse - può essere un'immagine scaricata da internet o una bitmap creata al volo. –
ma quando ho disabilitato un pulsante e poi abilitato, il colore grigio del pulsante non viene rimosso (in questo caso ho usato setBackgroundResource per impostare nuovamente lo sfondo drawable ma non mostra alcuna differenza, quindi ho usato setBackgroundDrawable e lo sfondo del pulsante è cambiato in effettivo drawable). Perché entrambi i metodi mostrano comportamenti diversi se non hanno alcuna differenza. –
Potresti postare del codice che mostri il problema? –