2011-06-22 5 views
13

¿Cuál es la diferencia entreDiferencia entre R.layout y android.R.layout

setContentView(R.layout.main); 

y

ArrayAdapter arrayAdapter = new ArrayAdapter(this, 
       android.R.layout.simple_spinner_dropdown_item, sarray); 

¿Cuál es la diferencia entre R.layout y android.R.layout?

Respuesta

26

R.layout.* son diseños que usted proporciona (en res/layout, por ejemplo).

android.R.layout.* son diseños que se entregan con el SDK de Android.

+7

solo para agregar, 'R.layout' es en realidad atajo para' your.package.R.layout' –

4

R.layout denota los recursos proporcionados por su aplicación. Todas las variables, archivos de recursos (estirable, cuerda, diseño, etc.) que se definen por su aplicación se puede acceder por R.

Ejemplo R.layout.*, r.drawable.*, R.id.*, R.color.* etc

Pero android.R denota los recursos de su SDK de Android. todos los recursos que no se define por usted, pero son definidos por andrdoi SDK estará disponible para usted si utiliza android.R

ArrayAdapter arrayAdapter = new ArrayAdapter(this, 
       android.R.layout.simple_spinner_dropdown_item, sarray); 

aquí no se ha definido un xml llamado simple_spinner_dropdown_item

R.layout.main denota que hay un archivo XML cuyo nombre es principal en el directorio de diseño

Gracias Deepak

2

R.layout.* se proporciona en nuestra aplicación que i s construido por nosotros, mientras que android.R.* es algo que viene con Android SDK, lo que significa que están predefinidos.