2011-03-25 19 views
9

Estoy tratando de explicar el contexto a un amigo. El contexto tal como está escrito en la documentación es que es una interfaz para los recursos del sistema (sensores, vibrador, etc.), pero ¿significaría esto memoria, CPU, etc.?Intentando explicar el contexto en Android a un amigo

Y además, ¿el contexto es una referencia a una actividad? Quiero decir, ¿es posible comparar que un contexto es igual a un controlador de navegación en la programación de iOS y el contexto de la aplicación es el delegado de la aplicación? Todavía estoy aprendiendo Android, así que quizás no sea el mejor para dar una respuesta. Si alguien puede dar una respuesta completa al respecto, estaría muy agradecido.

No es un hablante nativo de inglés, por lo que también me gustaría saber qué significa el contexto en la programación.

Respuesta

3

Contexto en el androide es una interfaz básica para acceder a varias cosas: Servicios

  1. del sistema. Vibrador, sensores y, como ya has mencionado.
  2. Recursos (strings.xml, preferencias compartidas, etc.).
  3. Vistas, que pertenecen al contexto.

El contexto se puede describir como un entorno de programación para su código. Es un contexto en el que se ejecuta tu código.

El contexto no se puede vincular solo a una actividad, Aplicación, Diálogo, Servicio y otros también lo implementa.

El contexto en esta situación particular se puede representar como una nube de objetos y cosas a las que puede acceder, que son visibles para usted. Desde la actividad puede acceder a vistas, servicios y recursos. En el contexto de la aplicación no hay vista, pero aún se ven recursos y servicios. Y así.

+0

gracias, sin embargo, es mucho pedir para elaborar la respuesta? – user676842

+0

gracias, sin embargo, es mucho pedir para elaborar la respuesta? Como, más sobre lo que eres que es un entorno de programación y demás. Mucho, muy apreciado. – user676842

+0

Actualizado, véalo por favor. –

6

Estoy tratando de explicar el contexto a un amigo . El contexto tal como está escrito en la documentación de es que es la interfaz de los recursos del sistema (sensores, vibrador , etc.), pero ¿significaría esto memoria , CPU, etc.?

No, la interfaz y la CPU están implícitamente provistas por el modelo de ejecución y memoria del lenguaje Java.

Y además, ¿contexto es una referencia a una actividad?

Las actividades son un tipo de contexto. Puede obtener una lista completa de las clases que heredan de Contextin the docs bajo "Subclases indirectas".

quiero decir es posible la comparación de que un contexto es igual a un UIViewController en IOS programación y contexto de aplicación es el delegado de la aplicación? Todavía estoy aprendiendo Android, por lo que podría no ser el mejor para hacer una respuesta. Si alguien puede proporcionar una respuesta completa sobre esto yo estaría muy agradecido.

Creo que los dos son bastante diferentes. Puede consultar Tasks and the Back Stack para obtener más información sobre Actividades como unidades separadas, poco compactas. Una subclase de aplicación en su aplicación puede ser similar a un delegado de aplicación en iOS.

Saludos no es un hablante nativo de Inglés así que también nos gustaría saber lo que significa contexto en la programación.

El definition Inglés podría ayudar:

2: la situación en la que algo sucede: el conjunto de condiciones que existe dónde y cuando ocurre algo

En la programación "contexto "está bastante cerca de esta definición. El contexto a menudo le dice a una función u objeto las respuestas a cosas como:

  • ¿Dónde estoy?
  • ¿Dónde está el recurso X?
  • ¿Está disponible la función Y?
  • ¿Qué estaba haciendo? (especialmente común en el caso de C)

Honestamente, creo que se puede llegar muy lejos en la programación de Android sin entender Context.

+0

gracias.Entonces 'Contexto'; ¿significa que las Actividades, los Servicios y Dios saben qué otras clases que lo extienden de alguna manera, son diferentes ejemplos de "contextos" en los cuales el código se puede ejecutar? ¿Es por eso que el nombre de la clase es 'Contexto' (no se supone que usted sepa exactamente, pero podría haber sido) elegido? ¿Y que el contexto decide qué recursos puedo usar? Gracias por tu tiempo. Quiero decir: Button aButton = new Button (this); No haría ningún comentario en un Servicio (este contexto) pero sí sentiría en una Actividad (este contexto) – user676842

+0

Sí, creo que es una buena explicación. –

+0

¡gracias! Si tiene algo más que agregar, lo agradecería mucho para ayudarme a entender, de lo contrario, me alegra su ayuda. Tu información debería haber sido escrita en libros. Siento que 'Contexto' es algo difícil de entender cuando no hay nada escrito en los libros al respecto. – user676842

1

Como su nombre indica, es el contexto del estado actual de la aplicación/objeto. Permite que los objetos recién creados comprendan lo que ha estado sucediendo. Normalmente lo llama para obtener información sobre otra parte de su programa (actividad, paquete/aplicación)

Puede obtener el contexto invocando getApplicationContext(), getContext(), getBaseContext() o esto (cuando está en la clase de actividad))

usos típicos de contexto:

crear nuevos objetos: La creación de nuevos puntos de vista, adaptadores, oyentes:

TextView tv = new TextView(getContext()); 
ListAdapter adapter = new SimpleCursorAdapter(getApplicationContext(), ...); 

acceder a recursos comunes estándar: Servicios como LAYOUT_INFLATER_SERVICE, SharedPreferences:

context.getSystemService(LAYOUT_INFLATER_SERVICE) 
getApplicationContext().getSharedPreferences(*name*, *mode*); 

Acceder a los componentes implícitamente: con respecto a los proveedores de contenido, las transmisiones, intento

getApplicationContext().getContentResolver().query(uri, ...); 
Cuestiones relacionadas