Pull to refresh

ActionBar на Android 2.1+ с помощью Support Library. Часть 3 — Полезные функции

Development for Android *
Tutorial
Всем доброго времени суток!

Мда, давно не писал я статей на Хабр. Что ж, буду это дело исправлять.
Вообще, ActionBar в Android – довольно сложная штука. В первой и второй частях я рассмотрел только основные его функции – меню и навигация. Но есть ведь и множество дополнительных: Split ActionBar, кастомный View для элемента меню и ActionProvider. О них и пойдёт речь. Кроме того, бонус: многие знают, что кнопка Up служит для перехода на предыдущее Activity. Но если на экран можно попасть только с одной другой Activity, то можно не кодить переход вверх. Заинтригованы? Прошу под кат.
Читать дальше →
Total votes 15: ↑12 and ↓3 +9
Views 14K
Comments 0

ActionBar на Android 2.1+ с помощью Support Library. Часть 2 — Навигация

Development for Android *
Tutorial
Привет, Хабр!

В предыдущей статье я рассказал о добавлении Support Library в ваш проект и привёл простой пример SupportActionBar. Но очень часто ActionBar используется не только как замена меню, но и как способ навигации по приложению. Под катом написано, как её реализовать.
Читать дальше →
Total votes 12: ↑9 and ↓3 +6
Views 18K
Comments 0

ActionBar на Android 2.1+ с помощью SupportLibrary

Development for Android *
Tutorial
Здравствуй, Хабрахабр!

Недавно я писал о том, что Google добавил поддержку ActionBar в свою Support Library. Думаю, стоит рассказать, как же им пользоваться. Под катом — инструкция по правильному импорту библиотеки в свой проект и основные моменты использования SupportActionBar.
Читать дальше →
Total votes 17: ↑15 and ↓2 +13
Views 43K
Comments 16

Соединение SlidingMenu с Support Library и обход возможных проблем

Development for Android *
Sandbox

Предисловие


Здравствуй, Хабр!

Сразу хочу сделать небольшое отступление от темы: я не профессиональный android-разработчик и только учусь. В этом посте, рассчитанном более на новичков, мне бы хотелось объединить решения тех проблем, с которыми столкнулся, при написании задуманного приложения, а в частности использовании ActionBar при помощи Support Library и присоединении к ним SlidingMenu.

Примерами качества для меня являются приложения VK, Forsquare и Instagram. Собственно из них сразу были взяты идеи использования ActionBar и SlidingMenu. Как и при верстке/разработке web-сайтов (моим основным делом) и их приличной работе в Internet Explorer, так и здесь, я первым делом задумался над совместимостью с устаревающими версиями Android, поскольку ActionBar поддерживается только с 3.0. Благодаря поиску быстро нашел решение — ActionBar для версий 2.1+.
Читать дальше →
Total votes 12: ↑10 and ↓2 +8
Views 15K
Comments 17

Новый SwipeRefreshLayout из библиотеки Android support — «потяните чтобы обновить»

Development for Android *
Tutorial
Тихо и незаметно вместе с обновлением библиотеки Android support до версии 19.1 в нее прокрался новый компонент, который часто бывает нужным и полезным в быту. Сей совсем крохотный росчерк я посвящаю ему, SwipeRefreshLayout.

Он добавляет функционал, который один мой коллега называет «резинка от трусов», а остальные знают этот UI-паттерн под названием «потяни, чтобы обновить». Он бывает нужен, когда есть какой-то контент, который пользователь хочет часто обновлять, и может это сделать, просто потянув контент жестом вниз, а потом отпустив.

Очень похоже, что компонент был создан для GoogleNow, а потом перекочевал в support lib (очень похожа анимация).
Читать дальше →
Total votes 41: ↑39 and ↓2 +37
Views 43K
Comments 7

Как легко сделать Navigation Drawer и вкладки, используемые в популярных приложениях от Google

Development of mobile applications *Development for Android *
Sandbox
При использовании популярного приложения Play Маркет многие обратили внимание на вкладки для переключения контента. Такое применение вкладок можно найти и в других приложениях от Google, таких как Play Музыка, Play Пресса.



На этой почве возникает интерес, а иногда и необходимость (если заказчик просит) реализовать увиденное. Я не стал исключением и при проектировании нового приложения, дизайн которого был набросан на черновике, присутствовал очень схожий дизайн, хотя и имел всего несколько вкладок. Казалось бы, что сложного? Сейчас откроем официальную документацию, просмотрим необходимые разделы и приступим к делу. Но, изучив документацию, не смог обнаружить соответствующих примеров — и тут же возник новый вопрос. Почему Android разработчики из компании Google по умолчанию не предоставляют примеров с необходимой функциональностью, чтобы сделать это довольно просто, ведь это реализовано в каждом их приложении? Также, погуглив, нашлись аналогичные вопросы на Stack Overflow. Исходя из этого, оказалось, что существует проблема или, по крайней мере, нераскрытый вопрос, в котором следует разобраться.

Ниже хочу рассказать о том, как всё же можно реализовать паттерн Navigation Drawer вместе с вкладками, как в популярных приложениях от Google.
Читать дальше →
Total votes 41: ↑39 and ↓2 +37
Views 122K
Comments 26

Navigation Drawer в стиле Material Design за 5 минут

Development of mobile applications *Development for Android *
Sandbox
imageВ данной статье я расскажу, как быстро добавить в ваше приложение для Android боковое меню (aka Navigation Drawer) в стиле Material Design. Для этого мы воспользуемся библиотекой, любезно предоставленной Mike Penz.

У вас получится Navigation Drawer, который:

  • Соответствует последним рекомендациям по дизайну (Google Material Design Guidelines);
  • Поддерживает использование нескольких Drawer (можно выдвигать второй справа);
  • Поддерживает использование бейджей;
  • Имеет простой и понятный интерфейс (API);
  • Может выползать как под, так и поверх Status Bar;
  • Позволяет менять иконки, цвета, бейджи во время выполнения;
  • Использует AppCompat support library;
  • Работает, начиная с API 14.

Помимо этого, новички обучатся интеграции сторонних библиотек в свой проект, что крайне полезно, учитывая их грандиозное разнообразие на Github.

Читать дальше →
Total votes 24: ↑20 and ↓4 +16
Views 111K
Comments 21

SwipeRefreshLayout: не сферический и не в вакууме

Development for Android *
Sandbox
Про новый SwipeRefreshLayout из библиотеки Android support на Хабре уже писали, да и Google любезно выдаёт множество ссылок на подобные примеры. Их всех объединяет одно — в SwipeRefreshLayout добавляется единственное TextView или ListView, и через минуту разработчик с умилением глядит на работающую анимацию. А если нам интерфейс чуть посложнее надо?
Читать дальше →
Total votes 15: ↑12 and ↓3 +9
Views 12K
Comments 4

Password Visibility Toggle — Android Support Library, revision 24.2.0

Development of mobile applications *Development for Android *

Здравствуйте! Предлагаю вниманию читателей перевод статьи об обновлении Android Support Library и одном немаловажном ее новом компоненте Password Visibility Toggle . Оригинал статьи можно найти здесь.


Считаю, что Password Visibility Toggle довольно интересный инструмент, причем довольно простой, который заслуживает отдельного внимания, поэтому прошу под кат.


Читать дальше →
Total votes 11: ↑9 and ↓2 +7
Views 9.6K
Comments 13

Navigation Architecture Component. Практический взгляд

red_mad_robot corporate blog Development of mobile applications *Development for Android *


На недавнем Google IO 2018 в числе прочего было представлено решение, помогающее в реализации навигации в приложениях.


Сразу бросилось в глаза то, что граф навигации можно просмотреть в UI редакторе, чем-то напоминающем сториборды из iOS-разработки. Это действительно интересно и ново для Android-разработчиков.


А так как я еще являюсь создателем довольно популярной библиотеки Cicerone, которая позволяет работать с навигацией на андроиде, то я получил множество вопросов на тему того, пора ли мигрировать на решение Google, и чем оно лучше/хуже. Поэтому, как только появилось свободное время, я создал тестовый проект и стал разбираться.

Читать дальше →
Total votes 23: ↑23 and ↓0 +23
Views 19K
Comments 7

Патчим AndroidX

TINKOFF corporate blog Development for Android *

На Google I/O 2018 была представлена замена существующим support-библиотекам — AndroidX


Изначально, support-библиотеки разрабатывались для обратной совместимости новых API-интерфейсов и были тесно связаны с операционной системой. Разработка support-библиотек велась во внутренних ветках, которые периодически вливались в Android Open Source Project (AOSP). Такой подход ограничивал мерж пулл-реквестов от сообщества небольшими отрезками времени когда код AOSP и внутренний код гугла были синхронизированы. Кроме того, для работы с support библиотеками необходимо было выкачивать весь код платформы, а это более 40ГБ исходного кода. Для моего диска объемом 250 ГБ это достаточно много.

Читать дальше →
Total votes 20: ↑20 and ↓0 +20
Views 9.2K
Comments 7