Розмір інтерактивних елементів

Усі елементи на екрані, з якими можна взаємодіяти різними способами, мають бути достатньо великими. Переконайтеся, що висота й ширина таких елементів становить принаймні 48 dp, як описано в правилах щодо спеціальних можливостей для матеріального дизайну.

Застосування

View

Якщо ви застосовуєте інтерактивні елементи в макеті сторінки, використовуйте для областей дотику розміри не менші за рекомендовані.

Якщо елементи керування мають динамічний розмір або змінюють його залежно від розміру контенту, використовуйте атрибути android:minWidth і android:minHeight, щоб визначити нижню межу розмірів цих елементів.

Щоб зберегти початковий розмір елемента View й водночас розширити його область дотику, використовуйте атрибути класу TouchDelegate, завдяки яким батьківський макет може обробляти події сенсорного введення від імені нащадка View.

Підказка. Сканер доступності може виявляти й зчитувати використання атрибутів TouchDelegate лише в ОС Android 10 і новіших версій. У старіших версіях ОС Android дані про розміри областей дотику можуть з’являтися навіть тоді, коли цей API використовується для збільшення таких областей до відповідних розмірів.

Compose

Якщо ви застосовуєте інтерактивні елементи в композиції, використовуйте для областей дотику розміри не менші за рекомендовані.

Якщо елементи керування мають динамічний розмір або змінюють його залежно від розміру контенту, використовуйте атрибути Modifier.sizeIn, щоб визначити нижню межу розмірів цих елементів.

Щоб зберегти вихідний розмір елемента й водночас розширити його область дотику, створіть батьківський інтерактивний елемент або використовуйте Modifier.mergeDescendants. Це дасть змогу сервісам із функціями доступності фокусуватися лише на більшому батьківському елементі й надсилати йому події кліку.

Дизайн

В інтерактивний елемент також входить область, яка реагує на дію користувача. Інтерактивні елементи за розміром більші, ніж їх видимі межі. Наприклад, розмір значка – 24 x 24 dp, однак разом із прилеглими відступами він становить 48 x 48 dp. У Jetpack Compose до елементів матеріального дизайну, як-от Checkbox або Switch, автоматично додаються відступи, щоб розмір елементів складав принаймні 48 x 48 dp. В окремих випадках (наприклад, коли дуже маленькі кнопки розташовані заблизько одна від одної) елементи неможливо розширити так, щоб не перекрити області дотику.

Радимо створювати інтерактивні елементи розміром принаймні 48 x 48 dp та робити між ними відступ у принаймні 8 dp, щоб забезпечити зручність користування й оптимальну відстань між інформацією. Інтерактивний елемент розміром 48x48 dp фактично має приблизно 9 мм (незалежно від розміру екрана). Для пристроїв із сенсорним екраном рекомендований розмір інтерактивного елемента становить 7–10 мм.

Щоб побачити приклади, перегляньте правила щодо спеціальних можливостей для матеріального дизайну.

Тестування

Щоб вручну перевірити, чи інтерактивні елементи в інтерфейсі користувача у вашому додатку не замалі:

  1. Відкрийте додаток.
  2. Знайдіть усі інтерактивні елементи в інтерфейсі.
  3. Переконайтеся, що всі вони мають розмір 48x48 dp (або приблизно 9 мм за всіма параметрами).

Автоматизовані інструменти тестування для ОС Android можуть виявляти замалі інтерактивні елементи. Cкористайтеся Сканером доступності для Android, щоб вручну перевірити свій додаток на пристрої. Щоб здійснювати автоматизовані тестування, увімкніть перевірку спеціальних можливостей в Espresso й Robolectric.

Пошук
Очистити пошук
Закрити пошук
Головне меню
11567701237689575793
true
Пошук у довідковому центрі
true
true
true
true
true
717068
false
false