Android это мое хобби и с недавних пор (с 2011) еще и моя работа.
На выходных немного преподаю курсы для новичков, по буднях кодю.
Контакты

Достижения

Все достижения (4)

Наибольший вклад в теги

Все теги (10)

Лучшие ответы пользователя

Все ответы (33)
  • Андроид: LayoutInflater - зачем он нужен?

    Collosteam
    @Collosteam
    Android кодирую
    Класс LayoutInflater содержит метод:
    public View inflate(int resource, ViewGroup root, boolean attachToRoot) {
            if (DEBUG) System.out.println("INFLATING from resource: " + resource);
            XmlResourceParser parser = getContext().getResources().getLayout(resource);
            try {
                return inflate(parser, root, attachToRoot);
            } finally {
                parser.close();
            }
        }

    Соответственно парсер парсит xml и преобразует в объект класса View;

    Когда вы в Activity указываете setContentView(int id);
    Вы передаете ссылку на xml. Внутри Activity находится экземпляр класса Window, он парсит ваш xml и получает объект класса View. Дальше при вызове в Activity - findViewById(int id), вы обращаетесь к экземпляру класса Window, в свою очередь он делегирует (передает вызов) экземпляру класса View.
    А класс View содержит метод findViewById(int id), и уже он возвращает искомый объект, соответственно в обоих случаях механизм один и тот же, только LayoutInflater обычно используется для парсинга xml не являющихся layout Activity. Например при отрисовке Fragments и CustomView или при компоновке Activity из Java.

    Посмотрите исходники SDK, там очень подробно все описано.
    Ответ написан
    Комментировать
  • Под что легче программировать: под IOS или под Android?

    Collosteam
    @Collosteam
    Android кодирую
    Все зависит от того какой язык програмирования вам ближе.
    Objective-C очень хороший язык, после Java, конечно, было неожиданностью увидеть его синтаксис, но как оказалося, все очень просто и интуитивно. За пару месяце можно освоить, до уровня написания кода без книжки. Под Android, на моих курсах менеджеры, через полтора месяца пишут клиент к своему блогу.
    Что касается разработки под Android и iOS, то впринципе уровень сложности примерно одинаковый, благодаря xCode разработка под iOS весьма увлекательное занятие, для Android прийдется поплясать с Studio.
    Единственный минус iOS необходимость на этапе обучения Мака, что не всегда по карману.
    Ответ написан
    Комментировать
  • Подсветка классов и методов в Android Studio

    Collosteam
    @Collosteam
    Android кодирую
    Скорее всего включен Power Save Mode

    File-> Power Save Mode
    Ответ написан
    1 комментарий
  • ViewPager с фрагментами, жизненные циклы?

    Collosteam
    @Collosteam
    Android кодирую
    Попробуй использовать
    PagerAdapter pagerAdapter = new PagerAdapter(getChildFragmentManager(), fragments);

    вместо
    PagerAdapter pagerAdapter = new PagerAdapter(super.getSupportFragmentManager(), fragments);
    Ответ написан
    1 комментарий
  • Какой движок лучше для создания кроссплатформенной игры для iOS/Android?

    Collosteam
    @Collosteam
    Android кодирую
    Рекомендую libgdx , фреймворк на Java.
    Ответ написан
    Комментировать

Лучшие вопросы пользователя

Все вопросы (7)