Як називається меню в андроїді. Як відкрити та налаштувати інженерне меню на Андроїд - інструкції та секретні коди. Коди сервісу апаратів на Андроїд
Оновлена версія Android 5 Lollipop, хоч і схожа на попередній KitKat, проте має деякі відмінності, які можуть здатися незвичними та незручними. Налаштувань у “Леденці” багато.
Одні з них (типу контрастного тексту або інвертування кольорів) потрібні небагатьом, інші необхідні практично кожному. Розглянемо питання, як налаштувати Андроїд 5, детальніше.
Заводські налаштування Android Lollipop
Одна з найважливіших Android 5 налаштувань – Factory Reset Protection («Захист фабричних налаштувань»). Активація цієї опції призведе до того, що скинути налаштування до заводських буде не можна без логіну та пароля до вашого облікового запису в Google.
Завдяки сервісу Android Device Manager власник втраченого або вкраденого смартфона зможе віддалено заблокувати та очистити пристрій.
Необхідно пам'ятати, що захист працює лише коли смартфон замкнений екраном активації.
Відновлення даних після інсталяції оновлення Андроїд
Ще одна корисна опція – можливість відновлення даних після встановлення Android 5.0 Lollipop. При початковому налаштуванні буде запропоновано різні варіанти відновлення даних аж до пропущених дзвінків.
Андроїд 5 налаштування облікових записів
Може стати в нагоді менеджер облікових записів користувачів - за аналогією з повноцінним десктопом можна буде розмежовувати доступ до можливостей смартфона.
Доступні 3 типи облікових записів:
- Обліковий запис «Гість» (Guest) має мінімальні права. Будь-яка його інформація зберігається лише тимчасово. Щоразу при вході під обліком гостя система буде запитувати, чи хоче користувач почати роботу заново або продовжить останню гостьову сесію.
- "Профіль" (Profile) дозволяє налаштувати доступ до програм та сервісів.
- "Користувач" (User) - він же господар пристрою. Цей обліковий запис має найбільші права. Будь-яка зміна в налаштуваннях системи, така як додавання мережі Wi-Fi, буде застосовуватися до всіх інших облікових записів на пристрої.
Як додавати користувачів? Дуже просто - заходимо в налаштування та шукаємо напис "Користувачі" (Users).
Спочатку ви побачите профіль власника смартфона та гостьовий. Можна також додати користувачів.
Щоб додати нових користувачів, потрібно буде ввести їх облікові записи Google. Кожен користувач зможе кастомізувати операційну систему під себе. Власник пристрою не має можливості контролювати цей процес, однак у його владі дозволити чи заборонити іншим користувачам надсилати SMS та дзвонити.
Обмеження доступу до Андроїд 5 Lollipop
Ще одна корисна функція- Так звана "Кнопка". Якщо ви даєте комусь свій смартфон і не хочете, щоб у ньому копали або щось міняли, використовуйте «Кнопку». Вона обмежить функціональність пристрою лише одним додатком – тим, на якому встановлено. До іншого доступ буде заборонено: «Введіть пароль».
Як це зробити? Відкрийте налаштування та виберіть опцію “Безпека”. Натисніть на неї. У списку натисніть "Закріплення екрана" (Screen pinning). Потім перемкніть тумблер у положення "Увімк." (On).
Тепер ви можете закріпити будь-яку програму на екран. Для цього запустіть вибрану програму і двічі натисніть на віконці.
Щоб вийти із закріпленої програми, натисніть та утримуйте кнопки “Огляд” та “Назад”. За кілька секунд ви потрапите на робочий стіл.
Як налаштувати переривання в Андроїд 5
Крім усього іншого, налаштовувати в Android 5.0 Lollipop можна так звані «переривання» - ви зможете самі визначити, які контакти або програми зможуть вам дзвонити або надсилати повідомлення.
Як налаштувати переривання? Зайдіть в налаштування, виберіть “Звуки та сповіщення” (Sound & notification) та топніть за цією опцією. Нижче повзунків налаштування звуків буде опція "Переривання" (Interruptions) – натисніть на неї.
Можна дозволити турбувати вас лише вибраним контактам або програмам. У Lollipop є можливість включення режиму «Важливі» за розкладом - для цього є спеціальна опція «Розклад режиму «Тільки важливі оповіщення» (Downtime (priority interruptions only)).
Можна швидко змінювати режими пріоритету, просто торкнувшись повзунка гучності. Під ним будуть доступні режими "Не турбувати" (None), "Важливі" (Priority) та "Всі" (All).
Перші два режими можна увімкнути безстроково або на певний час. Кнопки “+” та “-” дозволяють регулювати інтервал часу, протягом якого вибраний режим діятиме. Тимчасовий проміжок може регулюватися від 15 до 8 годин.
Налаштування Lollipop блокування екрану та сповіщень
В Android 5.0 Lollipop вхідні сповіщення висвічуються на екрані блокування. Це не завжди зручно. Навряд чи комусь хочеться "світити" інформацію особистого характеру. Для цього випадку є гнучке налаштування в Android 5 способу виведення повідомлень.
Щоб це зробити, зайдіть в Налаштування -> Звук та сповіщення -> На заблокованому екрані -> Приховати особисту інформацію. Після цього сторонні очіїї не побачать.
Пошта в Андроїд 5 стала зручнішою
Поштова програма Gmail, окрім нового дизайну, отримала підтримку облікових записів на інших поштових сервісах, що підтримують протоколи IMAP та POP. Тепер не потрібно залазити в браузер, щоб відкрити негуглівську «скриньку» – все можна буде зробити з однієї програми.
Android 5 налаштування економії батареї
Якщо ви хочете, щоб смартфон працював довше на одній зарядці, слід дізнатися, як налаштувати в Андроїд 5 режим економії батареї Project Volta. За словами розробників, він дає змогу продовжити час роботи на 15-20%. Правда, пристрій починає помітно «гальмувати».
Щоб увімкнути цей режим, увійдіть у налаштування, натисніть на «Батарея», потім на кнопку меню (три точки у правому верхньому кутку) і виберіть режим економії батареї:
Коли режим економії батареї увімкнеться, навігаційна та статусна панелі смартфона стануть помаранчевим кольором і з'явиться повідомлення про включення режиму економії:
Якщо захочете, то цей режим можна відразу ж вимкнути - у повідомленні є така можливість.
Налаштування в Android 5 функції Switch Access
Головне меню - один із основних інструментів для взаємодії користувача з додатком. В Android 2.3.x і раніше воно було «заховано» на апаратній кнопці Menu, і розробники малювали меню, хто як умів. Але починаючи з Android 3.0 недоробку було виправлено, меню стало стандартним компонентом на Action Bar, і отримало низку нових можливостей. При цьому процес розробки меню практично не зазнав змін. Меню в Android – це не просто набір кнопок, на які можна вішати OnClickListener. В Android з меню можна зробити набагато більше, ніж здається на перший погляд.
У цій статті я розповім, як зробити сучасне меню, як адаптувати його різних розмірівекрану, як робити перемикачі типу radio button прямо в меню, а також як динамічно керувати видимістю кнопок меню, приховуючи ті функції вашої програми, які не працюватимуть на тому чи іншому смартфоні. Під час статті постараюся дати максимально тих чи інших можливостей меню, а також дам посилання на офіційну документацію на тему.
Ось так по-різному може виглядати меню однієї програми.
Наша перша кнопка у меню
Меню Android описуються у файлах ресурсів або формуються програмним кодом. Рекомендується перший варіант із цілого ряду причин: швидкість розробки, наочність, простота супроводу. Ресурси меню розміщуються в підкаталозі menu каталогу ресурсів програми res. Створюємо каталог menu, потім створюємо новий Android XML File:Вибираємо тип ресурсу Menu, вводимо ім'я файлу. Так як у різних, швидше за все, буде різним, рекомендую прив'язувати імена файлів ресурсів меню до імен activity.
У редакторі, що відкрився, введемо код першої кнопки нашого меню:
Давайте розглянемо використані атрибути:
- android:id вказуємо, щоб потім у коді відрізняти одні кнопки від інших.
- android:orderInCategory вказує порядок нашої кнопки щодо інших. Вказуйте порядок з кроком 10 або 100, це дозволить у майбутньому додавати нові елементи в будь-яке місце, не перебудовуючи порядок інших.
- android:showAsAction - найцікавіший параметр, оскільки саме він керує поведінкою елементів меню у різних ситуаціях. Він може приймати цілий рядзначень:
- ifRoom - Показувати елемент у action bar, тільки якщо для нього достатньо місця. Якщо місця недостатньо, елемент буде автоматично прихований у додаткове меню (те, що показано трьома точками один над одним). Це найкращий спосіб кастомізації меню в залежності від розміру екрана пристрою. На великих екранах планшетів action bar буде заповнено кнопками, а на невеликих телефонахбудуть показані найважливіші кнопки, тоді як до решти також можна дістатися, але тільки через додаткове меню. Майте на увазі, що додаткове меню відображається в action bar тільки на смартфонах, на яких немає апаратної кнопки меню.
- withText - Поруч із іконкою кнопки буде показаний текст, заданий властивістю android:title . Цей параметр можна вказувати у поєднанні з іншими, розділяючи параметри знаком |
- never - Кнопка ніколи не буде видно на action bar, навіть якщо є місце для неї. До такої кнопки завжди доведеться діставатись через додаткове меню.
- always - завжди показувати кнопку в action bar. Даним параметром не можна зловживати, оскільки на маленьких телефонах кнопки можуть почати заповзати інші елементи action bar, наприклад на заголовок програми. Визначте для кожної діяльності максимум одну найважливішу кнопку, без якої ніяк не можна, і позначте всі тільки у неї. Інші (а по можливості всі) повинні бути ifRoom .
- collapseActionView - дозволяє зробити кнопку, що відкриває або приховує додатковий елемент View в action bar. Наприклад, можна задати такий параметр іконці пошуку, на її кліку показувати прямо в action bar поле для введення пошукового запиту.
- android:title – визначає заголовок кнопки меню. Він може відображатися поряд з іконкою в action bar або назва елемента в додатковому меню.
- android:icon - кнопка значок.
Іконки для меню
Якщо ви розробляєте програму в стилі Holo, ви можете використовувати готовий набір іконок від Google, який доступний для завантаження з офіційного сайту абсолютно безкоштовно.Набір іконок представлений окремо для темної та окремо для світлої теми Holo, а також різних розмірів екранів. Якщо ви не можете дозволити собі дизайнера у команді, цей набір просто незамінний.
Підключення меню до Activity
Завантажити меню із ресурсу дуже швидко. Відкриваємо код Activity і перекриваємо метод onCreateOptionsMenu:@Override public boolean onCreateOptionsMenu( Menu) ( getMenuInflater().inflate(R.menu.your_activity_menu, menu); return true; )
Тепер меню з'являється, але при натисканні на кнопку нічого не відбувається. Повісити обробник на кнопку можна кодом або прямо в XML-ресурсі, задавши як android:onClick ім'я методу-обробника. Щоб зробити те саме кодом, потрібно в Activity перекрити метод onOptionsItemSelected:
@Override public boolean onOptionsItemSelected(MenuItem item) ( switch (item.getItemId()) ( case R.id.menuPurchasesListNewRecord: // TODO: обробник натискання тут return true; ) return super.onOptionsItemSelected
Створюємо підменю
Підменю корисно, коли хочемо уточнити спосіб виконання дії, представленого в action bar. Наприклад, у нас є список покупок та кнопка «Сортування». Після натискання кнопки потрібно з'ясувати, за яким параметром користувач хоче відсортувати елементи списку: за категорією товару, за назвою або за порядком додавання до списку. Подивимося код підменю для такого випадку:Тут ми оголосили ще один тег усередині тега. Підменю являє собою групу тих же тегів, що дозволяє при необхідності зробити підменю в підменю і так далі.
Radio button"и в меню
Ми тільки-но зробили меню для вибору порядку сортування покупок. Було б чудово показувати, який спосіб сортування використовується зараз. Список може бути відсортований лише одним із трьох можливих способів, що відмінно відповідає ідеї radio button. Щоб зробити з нашого підменю набір radio button, достатньо тегу вказати властивість android:checkableBehavior="single" . Можливі значення android:checkableBehavior:- single - вибір лише одного з доступних елементів, наш випадок
- all - вибір будь-якої кількості доступних елементів, аналог check box
- none - елементи групи є звичайними елементами меню, це значення за промовчанням
Отриманий код меню:
Якщо запустити програму та спробувати вибрати один із способів сортування, нічого не станеться. У меню не показано, що елемент вибраний. Це доведеться зробити вручну викликом item.setChecked(true);
@Override public boolean onOptionsItemSelected(MenuItem item) ( switch (item.getItemId()) ( case R.id.menuPurchasesListNewRecord: // TODO: обробник натискання тут return true; case R.id.menuPurchasesListSort return true, case R.id.menuPurchasesListSortOrderName: item.setChecked(true); return true;
Якщо у вас залишилися питання щодо роботи з головним меню, буду радий відповісти в коментарях.
Android підтримує кілька типів меню. Перший – на телефоні є окрема кнопка Menu(У старих телефонах), натискання якої викликає меню. У нових пристроях окрему кнопку прибрали, замінивши на піктограму меню у вигляді трьох точок вертикальної орієнтації. Другий тип – контекстне меню, яке з'являється при натисканні та утримуванні пальця на екрані в потрібному місці (також можна натиснути та утримувати центральну кнопку на телефоні). Контекстне менюсвоєю чергою може мати підменю. Сьогодні ми познайомимося із першим типом меню. У цій статті розглядатиметься робота з меню на нових пристроях під керуванням Android 4.0 і вище.
У шаблоні Empty Activityнемає меню, тому ми створимо його самі. Це допоможе вам зрозуміти принцип роботи та отримати загальне уявленняПро проект. Запам'ятати назви класів, методів та код для обробки вибору пунктів меню необов'язково. В інших шаблонах меню буде вбудовано, і ви можете відразу використовувати його.
Створіть новий проект на основі Empty Activityі запустіть його. Жодного меню поки немає.
Створимо кілька рядкових ресурсів у файлі res/values/strings.xml, які відповідатимуть за пункти меню:
Settings Кіт Кішка Кошеня
Налаштування
В додаток Налаштуванняможна потрапити: натиснувши на іконку в меню програм (або на робочому столі) або через піктограму панелі перемикачів. Основний екран програми розділений на дві вкладки ВСЕ та ПІДТРИМКА, в останній можна виявити два посилання: Довідковий центр / Залишити відгук та Рекомендації та корисні поради . У деяких країнах у вкладці підтримки можна отримати допомогу та поставити запитання живій людині в чаті. Всі налаштування смартфона зібрані в 4 групи: Бездротові мережі, Пристрій, Особисті дані та Система; і розбиті на 22 розділи. У верхній частині закріплено 5-ту групу яка називається Підказки, тут з'являються інтерактивні поради щодо налаштування системи. Ще одне нововведення полягає в наявності кнопки Довідка/відгук у всіх розділах/налаштуваннях. У всіх екранах Налаштувань крім головного є бічне меню для швидкого переходудо інших розділів.
![](https://i1.wp.com/droidd.ru/assets/xyfullsizedib.jpg)
Базові програми
Телефон– на головному екрані програми відображаються: рядок пошуку з кнопками голосового пошуку та виклику налаштувань програми, знизу, кнопка виклику номеронабирача. Вкладка Швидкий набір містить картки контактів, що часто набираються, вкладка Нещодавні містить список останніх дзвінків, вкладка Контакти – відповідно всі контакти. У налаштуваннях програми можна керувати шаблонами швидких відповідей та списком заблокованих абонентів.
Контакти– це програма для роботи з контактами користувача. За функціональністю воно мало чим відрізняється від вкладки Контакти у телефоні.
Повідомлення– додаток для роботи із SMS за замовчуванням. Основний екран програми містить список діалогів, кнопки пошуку, налаштувань та створення нового повідомлення. Програма виглядає максимально просто і має примітивну функціональність. З незвичайного зазначу те, як додаток надає кожному діалогу свій унікальний основний колір.
Gmail– це програма для роботи з електронною поштою за замовчуванням починаючи з п'ятої версії Android. До нього можна додавати поштові скриньки не лише від Google, а й від інших. поштових сервісів. На головному екрані відображається список листів та кнопки пошуку та створення нового повідомлення. Свайп від лівого краю екрана викликається бічна панель, яка містить список папок та ярлик налаштувань.
Chrome– є системним браузером за умовчанням, до його плюсів можна віднести інтеграцію з сервісами Google та широкі можливості синхронізації вкладок, форм, паролів тощо, до мінусів – неідеальний користувальницький інтерфейста зайве навантаження на процесор та акумулятор.
Годинник– включає такі функції: будильник, світовий час, таймер і секундомір;
Камера. На головному екрані розташований видошукач і кнопки: спуск затвора, перемикання на фронтальну камеру, галереї, увімкнення таймера, активації спалаху, перемикання режиму HDR+, увімкнення сітки, вибору пресета балансу білого та Додатково. Перемикання між режимами зйомки фото та відео здійснюється свайпом убік. Крім основного режиму зйомки є ще чотири: Уповільнена зйомка – дозволяє знімати із чотирикратним або восьмикратним уповільненням; Панорама дозволяє створювати панорамні фотографії з кутом огляду до 360°; Photo Sphere – створення фотосфери; Розмиття – дозволяє створювати фотографії зі штучним ефектом Боке.
Фото– ця програма виконує роль системної галереї і водночас є клієнтом однойменного сервісу від Google.
Календар– основним уявленням додатка є Розклад, де всі події йдуть одним списком, що цікаво: початок кожного місяця в цьому списку озаглавлено симпатичною картинкою, що відображає основну суть цього місяця. Щоб подивитися на місяць, потрібно тапнути за назвою поточного місяця в заголовку. Подання можна змінити на День, 3 дні, Тиждень та Місяць. У нижньому правому куті відображається кнопка додавання події.
Калькулятор– має стандартну та розширену функціональність. У портретній орієнтації панель з додатковими функціями(sin, cos, tan, ln і т.д.) викликається свайпом від правого краю екрану, в альбомній орієнтації ця панель видно завжди.
Карти– це додаток-клієнт для Карт Google. Основний екран містить рядок пошуку та кнопки: кнопка виклику бокового меню, кнопка голосового пошуку, кнопка орієнтації на північ, кнопка визначення поточного розташування та кнопка створення маршруту. У бічному меню можна зберегти обрану ділянку карти в пам'ять телефону для подальшого користування програмою в режимі офлайн. У розділі "Хронологія" ведеться журнал переміщень користувача. Розділ “Ваші враження” містить відгуки про публічні місця: ресторани, торгові центри, салони краси тощо.
Завантаження- Найпростіший менеджер завантажень.
Фірмові програми
Play Маркет – це клієнт магазину програм та основна фірмова програма від Google. За допомогою нього здійснюється купівля, встановлення та оновлення сторонніх додатків. Розділ “Ігри та програми” являє собою віртуальну вітрину, де відображаються різні добірки товару, наприклад, Новинки або Найкращі популярні ігри, у вигляді мініатюр додатків, які очолюють відповідну добірку та посилання на весь список. Розділ "Фільми, музика, книги" це теж віртуальна вітрина, але на ній представлений відповідний контент та преса також у вигляді добірок та банерів. Розділ “Мої програми та ігри” для зручності користувача складається з двох списків: Встановлені та Усі. Розділ "Список бажань" показує всі товари колись зазначені користувачем як бажані.
Play Ігри- Це додаток клієнт однойменного сервісу. Розділ "Головна" відображає основні дані про користувача: ім'я, рівень, скільки очок досвіду потрібно набрати для переходу на наступний рівень. Нижче відображаються списки ігор: рекомендовані ігри, ігри в які грає користувач і що грають друзі. Розділ “Мої ігри” містить три вкладки: останні, всі та встановлені. Розділ “Сповіщення” у трьох вкладках відображає список запрошень, список подарунків та запитів та список квестів. Розділ “Гравці” у двох вкладках відображає список доданих гравців та список рекомендованих – друзів друзів. Розділ “Знайти ігри” також містить три вкладки: Рекомендуємо, Популярні та Мережеві ігри.
Play Музика– це музичний плеєрі, одночасно, клієнт однойменного хмарного музичного сервісу. Розділ “Головна” відображає список останніх дій користувача: прослухані або куплені треки. Розділ "Фонотека" відображає всі треки користувача, куплені або закачані ним з комп'ютера, сортую у вкладках по плейлисту, виконавцю, альбому або жанру. Присутня цікава функція "Автомікси", вона значно спрощує створення плейлистів з великої кількості треків, для створення автоміксу достатньо вказати ім'я виконавця, альбому або жанру, і додаток сам створить новий плейлист. У бічному меню також є посилання Play Маркет, т.к. купівля треків провадиться тільки з нього. Тепер у налаштуваннях є еквалайзер.
Play Фільми– це клієнт сервісу для купівлі/прокату фільмів та перегляду на мобільному пристрої. Розділ “Головна” відображає фільми, серіали та мультфільми зібрані у плейлисти за жанрами та популярністю. Розділ "Бібліотека" відображає список куплених або взятих у прокат користувачем фільмів. У бічному меню є посилання Play Маркет.
YouTube- Це клієнт однойменного сервісу. Основний екран розділений на чотири вкладки: Головна, У тренді, Передплати та Акаунт. Остання вкладка містить розділи: Переглянуті, Мої відео, Оповіщення, Покупки та Переглянути пізніше; а також список плейлистів. Вікно перегляду ролика зручне та функціональне, але має одну неприємну особливість: при відкритті ролика починається його автоматичне завантаження, навіть якщо пристрій для доступу до Інтернету використовує мобільну мережу . Тому якщо ви відкрили відео не для перегляду, а, наприклад, для перегляду опису або коментарів, приготуйтеся розлучитися з кількома десятками (сотнями?) мегабайт трафіку.
Диск– це програма для роботи з сервісом хмарного зберігання даних Google Диск. Основний екран відображає кореневу директорію сховища користувача та список нещодавно відкритих файлів. Розділ “Доступні мені” відображає список інших користувачів, до яких відкритий доступ. Крім цього є розділи: Google Фото, Нещодавні, Помічені, Офлайн-доступ та Завантажені. У бічній панелі знизу показується який об'єм дискового простору зайнятий і скільки доступно користувачу.
Останні кілька років Appleі Google послідовно рухають свої операційні системи назустріч одна одній, якщо бути точним, намагаються зайти одна до одної у фланг. Apple з кожною версією iOS розширює функціональність і намагається зробити систему більш гнучкою для користувача та програм. Google же намагається виправити традиційні слабкі: привести в порядок роботу з повідомленнями, зробити одноманітним і більш вивіреним і подолати витік заряду акумулятора. І вони, треба сказати, рухаються в правильному напрямку, шкода що іноді надто повільно.
В Android 7.1 особисто мене підкуповують: більш доброзичливі в порівнянні з iOS механіка багатозадачності та робота з кількома програмами; гнучкість у виборі інструментів на вирішення тих чи інших завдань; глибока інтеграція з сервісами Google, якими я активно користуюсь; більш стрункий і логічний інтерфейс користувача. Не можна не помітити, як Google підчистив список встановлених додатківпозбавивши користувача від мотлоху. Не влаштовує мене: дренаж заряду батареї, що зберігся; різнобій в UI переважної кількості програм і менш ефективне використання поверхні екрану. Систему, незважаючи на постійні покращення, досі не можна назвати повністю безпечною, загальна оптимізація в iOS як і раніше краще. Підсумовуючи, можна однозначно стверджувати, що Android до п'ятої версії і зараз це майже дві різні системи, тішить, що Google намацали правильний напрямок і повільно і вірно рухаються ним.
До появи Honeycomb (Android 3.0) усі Android пристрої мали кнопку "меню" під екраном. Розробники могли використовувати її на свій розсуд, інтерфейси багатьох програм були побудовані саме навколо цієї кнопки. В орієнтованому на планшети Honeycomb було зроблено крок у бік відмови від механічних (і сенсорних) кнопок, у зв'язку з цим, у третій версії Android з'явився клас ActionBar, який дозволяв дати користувачеві швидкий доступ до налаштувань програми через спеціальну панель, яка називається action bar. На думку розробників Google, майбутнє за Action Bar-ом і програмісти повинні відмовитися від використання кнопки "меню". В даний час на ринку домінують смартфони з механічною або сенсорною кнопкоюпід екраном, але з появою Ice Cream Sandwich ситуація може різко змінитись. Вам, як розробнику, важливо заздалегідь підготуватися до появи таких пристроїв та використовувати концепцію Action bar вже сьогодні.
На перший погляд може здатися, що використання Action Bar викличе проблеми при розробці програм для Android 2.x, в якому ця панель ще не була реалізована. Однак тут нема проблеми. Ніхто не забороняє Вам продовжувати використовувати кнопку "меню" на тих пристроях, де вона присутня, додавання ж Action Bar-а вимагатиме від вас написання всього кількох рядків коду.
Якби я спробував стиснути цю статтю в одну пропозицію, вона звучала б так: " Встановіть targetSdkVersion в 14 і позначте тегом showAsAction="ifRoom" елементи меню, які мають бути винесені на Action Bar".
Остаточна відмова від меню налаштувань в Android
Недостатньо просто відмовитись від використання кнопки "меню", потрібно повністю викинути цю концепцію зі своєї голови. Не створюйте меню, створіть усі необхідні кнопки безпосередньо всередині діяльності (activity). Якщо якісь дії не поміщаються на панель, винесіть їх у додаткове меню (action overflow). На наведеній картинці показано action bar з кнопкою для пошуку та додаткове меню з правого боку панелі.
Якщо Ваш додаток створено під стару версіюандроїда (в якій традиційно використовується меню), то при запуску на Android 3 планшеті в нижній частині екрана відображатиметься панель, що емулює три кнопки, що існують на телефонах другої гілки.
Термінологія досить заплутана, але меню, що випадає (action overflow) передбачає абсолютно іншу концепцію використання, ніж просте меню налаштувань. Замість того, щоб розглядати меню як вмістище всіх налаштувань програми, ви створюєте панель, на яку розміщуєте основні налаштування. Все другорядне виноситься в меню, що випадає, що викликається при натисканні кнопки з трьома точками (Action overflow button) в правій стороні панелі.
Action overflow button
Якщо ви запускали програми, написані для Android 2.3 і нижче на пристроях без кнопок під екраном (наприклад, на планшеті з Honeycomb або на Galaxy Nexus), ви напевно помітили, що поряд із зображенням трьох кнопок на панелі внизу з'являється і кнопка Action overflow (три крапки один над одним). Це якийсь компроміс, проте, не дуже вдалий. У програмах, які взагалі не використовуються меню налаштувань, ця кнопка нічого не робить, дратуючи користувачів. Тому дуже непоганим рішенням було б стежити за версією Android-а, і якщо Ваша програма запускається під Android 3.0+, прибирати цю кнопку з навігаційної панеліта використовувати Action Bar. Такий підхід дозволяє зберегти сумісність програми зі старими апаратами та зробити її привабливішою для нових.
Якщо програма запущена на пристроях без кнопок, система вирішує, чи потрібно додати action overflow на навігаційну панель залежно від значення поля
- Якщо Ви встановили значення minSdkVersion або targetSdkVersion більше 11, то система не додає цю кнопку.
- З іншого боку, система створює цю кнопку, коли ви запускаєте програму на Android 3.0 і вище.
- Єдиний виняток: коли ви встановите minSdkVersion 10 або нижче; targetSdkVersion в 11, 12 або 13, і не будете використовувати ActionBar, система додасть цю кнопку на телефонах (не планшетах) під управлінням Android 4.0 та вище. В основі цього виключення лежить наступна ідея: якщо Ви розробляєте програму одночасно для телефонів другої гілки і для третьої планшетів, то Ви припускаєте, що у телефонів повинна бути кнопка меню, а у планшетів її немає.
Таким чином, якщо ви хочете заборонити overflow action кнопку в навігаційній панелі, Вам потрібно встановити targetSdkVersion в 14 (в minSdkVersion можна записати більш низьке значення, щоб програма могла запускатися на старих пристроях).
Перехід до концепції action bar-а
Якщо у Вас є діяльності, які використовують меню налаштувань (створене за допомогою onCreateOptionsMenu()), то прибравши кнопку з панелі навігації (встановивши targetSdkVersion=14) Ви повинні надати користувачеві альтернативний засібдоступу до налаштувань. На щастя, від Вас не потрібно багато роботи, оскільки в системі автоматично створюється action bar.
Додати showAsAction="ifRoom" у теги
Щоб зробити сприйняття вашої програми більш цілісним, рекомендуємо Вам використовувати як іконки для Action bar-а іконки від Android UX Team. Архів.
Як видалити Action Bar з Android програми
Якщо Вам не потрібен Action bar, Ви можете видалити його з будь-якої діяльності або взагалі з програми. Це може бути актуальним для ігор та програм, які не використовують меню налаштувань. Ви можете видалити action bar, використовуючи тему Theme.Holo.NoActionBar або Theme.DeviceDefault.NoActionBar.
Якщо ви хочете використовувати ці схеми, але зберегти зворотну сумісність, можете використовувати систему управління ресурсами, щоб встановити різні теми різних версійплатформ. Докладніше цю тему розкрито тут. Вам знадобиться створити власну тему, яка успадковуватиме теми різних платформ залежно від поточної версії.
Наприклад, Ви можете оголосити тему для своєї програми
(або для конкретної діяльності у тезі
Для пристроїв, що працюють на Android 2, увімкніть наступну тему res/values/themes.xml.
Для Honeycomb увімкніть наступну тему в res/values-v11/themes.xml.
При запуску в залежності від версії APIсистема вибере відповідну тему.
Висновок
Повторимо тезово ключові ідеї та моменти статті:
- на нових Androidпристроях може бути відсутня кнопка "menu", тому при розробці програм краще взагалі відмовитися від її використання.
- Встановіть targetSdkVersion = 14 і протестуйте свою програму на Android 4.0.
- Додати тег showAsAction="ifRoom" в
- Елемент меню, якщо хочете, щоб він автоматично потрапив на панель action bar.
- Якщо у програмі не використовується ActionBar, Ви можете прибрати її, скориставшись темами Theme.Holo.NoActionBar і Theme.DeviceDefault.NoActionBar.
Створення меню
Останнє оновлення: 26.02.2017
Меню в додатках представляє клас android.view.Menu, і кожна activity асоціюється з об'єктом цього типу. Об'єкт android.view.Menu може включати різну кількість елементів, а ті можуть зберігати поделементи.
Визначення меню у xml
Меню, як і файли інтерфейсу або зображень, також є ресурсом. За промовчанням файли меню знаходяться у проекті в каталозі res/menu.
При створенні нового проекту з Empty Activity у нас немає жодного каталогу res/menu і, відповідно, немає ресурсів меню, але ми можемо їх додати вручну. Для цього натиснемо правою кнопкою миші в проекті на каталог res і далі в списку виберемо пункт New -> Android Resource File :
Після цього в каталозі res буде створено підкаталог menu, в якому буде файл main_menu.xml.
За промовчанням цей файл визначає один порожній елемент menu:
Змінимо вміст файлу, визначивши кілька пунктів:
Тег