Что такое «контекст» на Android?

Это работало для меня на узле ASP.NET MVC3, где я оставил структуру для настройки ненавязчивой проверки и т. д., если это полезно кому угодно:

$("form").data("validator").settings.ignore = "";
1803
задан naXa 4 November 2018 в 11:11
поделиться

2 ответа

Проще говоря:

Как следует из названия, это контекст текущего состояния приложения/объекта. Это позволяет вновь созданным объектам понять, что происходит.Обычно вы вызываете его, чтобы получить информацию о другой части вашей программы (активности и пакете/приложении).

Вы можете получить контекст, вызвав getApplicationContext(), getContext(), getBaseContext() или this (в класс, унаследованный от Context, например классы Application, Activity, Service и IntentService).

Типичное использование контекста:

  • Создание новых объектов: Создание новых представлений, адаптеров, слушателей:

    TextView tv = new TextView(getContext());
    Адаптер ListAdapter = новый SimpleCursorAdapter(getApplicationContext(), ...);
    
  • Доступ к стандартным общим ресурсам: Такие службы, как LAYOUT_INFLATER_SERVICE, SharedPreferences:

    context.getSystemService(LAYOUT_INFLATER_SERVICE)
    getApplicationContext().getSharedPreferences(*имя*, *режим*);
    
  • Неявный доступ к компонентам: Что касается поставщиков контента, трансляций, намерений

    getApplicationContext().getContentResolver().query(uri, ...);
    
1435
ответ дан 22 November 2019 в 20:06
поделиться

Контекст — это дескриптор системы; он предоставляет такие услуги, как разрешение ресурсов, получение доступа к базам данных и предпочтениям и так далее. В приложении для Android есть действия. Контекст похож на дескриптор среды, в которой в данный момент работает ваше приложение. Объект действия наследует объект контекста.

Дополнительную информацию см. в Введение в разработку для Android с помощью Android Studio — Учебное пособие.

116
ответ дан 22 November 2019 в 20:06
поделиться
Другие вопросы по тегам:

Похожие вопросы: