Архитектура графического интерфейса Android - связь между поверхностью / представлением / окном / холстом

=========================

ОБНОВЛЕНИЕ: После нескольких дней гугления и экспериментов , я нашел ответы на большинство этих глупых вопросов. См. Ответы, которые я отправил.

=========

За что отвечает Android Window?

Вот несколько вопросов:

  • Отвечает ли он за сбор и отправку входных данных?
  • Какая связь между представлением и окном? То же, что и связь между поверхностью и окном в DFB?
  • Какая связь между действием и окном? Будет ли каждое действие иметь окно?
  • Можно ли создать окно из приложения? А когда это нужно?
  • Поддерживает ли Android многооконный режим?

РЕДАКТИРОВАТЬ: Добавьте дополнительные вопросы:

  1. Каковы обязанности различных классов, таких как Window, View, Canvas, Surface, и как они взаимодействуют друг с другом?

  2. Как много окон обычно есть у Activity?

3. Все ли представления в одном Activity будут прикреплены к Window? Что означает "прикрепить"?

  1. У каждого окна есть поверхность? У каждого холста есть поверхность?

  2. View отвечает за focus / keyEvent / manager, в то время как Cavus отвечает только за операцию «рисования».

  3. WindowManager отвечает за стек окон? Как это связано с SurfaceFlinger?

  4. View не владеет Surface, а Window, которым он владеет?

  5. View рисует сам, используя холст, полученный путем вызова surface.lockCanvas ().

  6. Когда будет вызван onDraw (Canvas)? Как и кто передает параметры холста?

  7. Есть ли у холста размер? Будет ли поверхность Window всегда отображаться в полноэкранном режиме?

Снова ИЗМЕНИТЬ:

После просмотра этой замечательной презентации, предоставленной Роменом Гаем http://www.youtube.com / watch? v = duefsFTJXzc & feature = feedwll & list = WL , несколько вопросов решены и добавлены еще несколько :)

  1. Будет ли каждое Activity иметь один ViewRoot и, следовательно, одно окно?
  2. Нужно ли создавать окно явно? и Всегда ли поверхность окна будет полноэкранной?
  3. Будет ли строка состояния в другом окне?
  4. Каков размер поверхности? Всегда ли будет полноэкранный режим?

31
задан numan salati 10 February 2013 в 19:56
поделиться

1 ответ

для вопроса

, Каковы отношения между действием и окном? Будет каждое Действие иметь окно?

не соглашаются с @pierrotlefou, причиной в Google документ , который SurfaceView обеспечивает специальной поверхности, а не Окну.

поверхность является Z, заказанным так, чтобы это было позади окна, содержащего его SurfaceView; SurfaceView перфорирует дыру в свое окно, чтобы позволить ее поверхности быть отображенной.

0
ответ дан 27 November 2019 в 22:50
поделиться
Другие вопросы по тегам:

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