Размер на елементите за докосване

Всеки елемент на екрана с възможност за кликване, докосване или друг вид взаимодействие трябва да е с подходящ за целта размер. Добре е ширината и височината на тези елементи да са поне 48 dp, както е описано в насоките за достъпност за материален дизайн.

Реализация

View

Когато в дадено оформление реализирате елементи с възможност за кликване или докосване, добре е да използвате размери, които са равни или по-големи от препоръчителните за целите за докосване.

Ако височината и ширината на съответните контроли се променят динамично или въз основа на размера на съдържанието им, добре е да зададете долна граница за тях чрез android:minWidth и android:minHeight.

За да се запазва оригиналният размер на елемент View при разгъване на областта му за докосване, добре е да използвате класа TouchDelegate. Той позволява на родителското оформление да обработва събития от докосване вместо дъщерния елемент View.

Пояснение: „Проверка на достъпността“ може да открива и взема под внимание използването на TouchDelegate само когато работи под версия на Android 10 и по-нова. При по-стари версии на Android резултатите за размера на елементите за докосване може да се показват дори когато този API се използва за уголемяване на елементите за докосване до подходящ размер.

Compose

Когато в даден композируем елемент реализирате елементи с възможност за кликване или докосване, добре е да използвате размери, които са равни или по-големи от препоръчителните за целите за докосване.

Ако височината и ширината на съответните контроли се променят динамично или въз основа на размера на съдържанието им, добре е да зададете долна граница за тях чрез Modifier.sizeIn.

За да се запазва оригиналният размер на композируем елемент при разгъване на областта му за докосване, добре е да превърнете предшестващия елемент в clickable или да използвате Modifier.mergeDescendants, което позволява услугите за достъпност да поставят фокуса само върху по-големия предшестващ композируем елемент и да му изпращат кликванията.

Дизайн

Елементите за докосване включват областта, която реагира на действията на потребителите. Тя е по-голяма от видимите граници на елементите. Възможно е например дадена икона да се показва с размер 24 x 24 dp, но вътрешните полета около нея, съставляващи пълната цел за докосване, да са с големина 48 x 48 dp. В Jetpack Compose компонентите от Material, като Checkbox или Switch, автоматично добавят вътрешни полета, така че размерът им да е минимум 48 x 48 dp. В някои случаи, като например при много малки и близки бутони, елементите не могат да бъдат разгънати, без областите им за докосване да се застъпят.

Добре е целите за докосване да са с минимален размер от 48 x 48 dp и на минимално разстояние от 8 dp, за да се осигури баланс между плътността на информацията и използваемостта. При 48 x 48 dp физическият размер на елементите за докосване е около 9 мм независимо от големината на екрана. Препоръчителният размер за обекти, които се показват на сензорен екран, е между 7 и 10 мм.

За примери прегледайте насоките за достъпност за материален дизайн.

Тестване

За да потвърдите ръчно, че потребителският интерфейс на дадено приложение не съдържа малки елементи за докосване:

  1. Отворете приложението.
  2. Идентифицирайте всички елементи в интерфейса с възможност за кликване, докосване или друг вид взаимодействие.
  3. Проверете дали размерът на всеки от тези елементи е 48 x 48 dp или приблизително 9 мм от всяка страна.

Инструментите на Android за автоматизирано тестване могат да откриват малки елементи за докосване. Добре е да използвате „Проверка на достъпността“ за Android за ръчно тестване на приложението ви на хардуерно устройство. За автоматизирани тестове включете функцията за проверка на достъпността в Espresso и Robolectric.

Търсене
Изчистване на търсенето
Затваряне на търсенето
Главно меню
1255095223742709379
true
Търсене в Помощния център
true
true
true
true
true
717068
false
false