Выбрать главу

Activity это компонент пользовательского интерфейса. Fragment это многоразовый компонент, который прикреплен к и отображается в Activity.

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

В то время как вы можете использовать активность без фрагментов, обратное не верно.

Все перечисленное.

Вопрос 23

Что такое Адаптеры и зачем они используются?

Они связывают ListView, GridView, Spinner, ViewPager и др. AdapterView с базовыми данными. Они обеспечивают доступ к элементам данных и отвечают за создание представления для каждого элемента набора данных.

Выбор пользователя обрабатывается с помощью установки AdapterView. OnItemClickListener.

Ничего из перечисленного.

Все перечисленное.

Вопрос 24

Как оптимизировать использование View и сделать приложение более отзывчивым?

Чем больше View вы можете удалить из макета, тем более чутко будет реагировать ваше приложение.

Избегать использование вложенных экземпляров LinearLayout.

<merge> тег является особенно полезным с тегом <include>.

Все перечисленное.

Вопрос 25

Что такое паттерн ViewHolder и как он используется? Какие доводы за и против его использования? Какие альтернативы?

ViewHolder это паттерн кэширования View. findViewById ().

Вызовы View. findViewById () ресурсоемкие, потому что значительные части макета (иерархической структуры) необходимо пройти при каждом вызове, чтобы найти нужного View ребенка в пределах потенциально сложной планировки.

С включением компилятора JIT и огромных улучшений в сборщике мусора после Android 2.2 (Froyo), стоимость не кэширования View. findViewById () резко уменьшилась.

Использование паттерна ViewHolder приводит к таким побочным эффектам, как беспорядочный код, нарушение принципов Separation of Concerns Principle и Single Responsibility Principle.

Альтернатива паттерну это расширить родительский View и кэшировать дочерние View в самом родительском View.

Все перечисленное.

Вопрос 26

Что такое опция Don’t Keep Activities?

Это опция приложения Dev Tools App «Immediately destroy activities» для уничтожения активности, как только она остановилась, для тестирования onSaveInstanceState (Bundle) / onCreate (android. os. Bundle).

Чтобы помочь обнаружить случайный доступ к диску или сети в главном потоке.

Для сканирования проекта и генерации подробного отчета, содержащего ошибки и предупреждения в коде и ресурсах.

Все перечисленное.

Ничего из перечисленного.

Вопрос 27

Назовите паттерны общей структуры приложения:

Top Level View (наполнить стартовый экран контентом, навигацией и поиском, установить Action Bar для навигации, использовать floating action button для стимуляции действия).

Category View (использовать вкладки, чтобы объединить выбор категории и отображение данных, использовать контекстное меню).

Detail/Edit View (использовать навигацию между элементами внутри представления, использовать перелистывание между представлениями).

Все перечисленное.

Вопрос 28

Назовите паттерны навигации:

Tabs

Fixed tabs

Scrollable tabs

Navigation drawer

Navigation drawer + tabs

Navigation in content

Nested navigation drawer

Nested navigation drawer + tabs

Expanding navigation drawer

Cascading navigation drawer

Spinners

Split Action Bar

Contextual Action Bar

Все перечисленное

Вопрос 29

Как создать намерение чтобы послать электронную почту в Android?

Intent email = new Intent (Intent. ACTION_SEND);

email. setType («message/rfc822»);

email. putExtra (Intent. EXTRA_EMAIL, new String [] {"info@skillgun.com»});

email. putExtra (Intent. EXTRA_SUBJECT, «Hi, This is a test mail..»);

startActivity (Intent. createChooser (email, «Choose an Email Client»));

Intent email = new Intent (Intent. ACTION_EMAIL);

email. setType («message/rfc822»);

email. putExtra (Intent. EMAIL, new String [] {"info@skillgun.com»});

email. putExtra (Intent. SUBJECT, «Hi, This is a test mail..»);

startActivity (Intent. createChooser (email, «Choose an Email Client»));

Intent i = new Intent (Intent. ACTION_SEND);

i. setType («message/rfc822»);

i. putExtra (Intent. EXTRA_EMAIL, new String[]{"info@skillgun.com»});

i. putExtra (Intent. EXTRA_SUBJECT, «test mail»);

i. putExtra (Intent. EXTRA_TEXT, «Did you get this mail? if so please reply back»);

startActivity (Intent. createChooser (i, «Send mail…"));

Ничего из перечисленного

Вопрос 30

Какая функциональность у HTTPClient интерфейса в Android?

connection management

authentication management

cookies management

Все перечисленное.

Вопрос 31

Что из перечисленного верно о HTTP запросах в Android приложениях?

Для загрузки данных с сервера использовать HttpGet запрос.

Для отправки почты использовать HttpPost запрос.

Для обновления блога, написанного на телефоне, использовать HttpGet запрос.