Ограничения на достъпността в приложения за платно
Можете да проектирайте и изградете достъпни приложения за платно с вградени контроли. Понякога комбинацията от дизайн на приложението, използване на различни контроли и конфигурирани свойства на контрола може да доведе до това приложението да има недостъпен потребителски интерфейс.
В тази статия ще научите за тези ограничения на достъпността в приложенията на платното и как можете да подобрите интерфейса на приложението, за да го направите по-достъпен?
Диалози и слоеве
Не се поддържат диалогови прозорци и потребителски интерфейси, които се появяват върху друго съдържание. Тези наслагвания изискват управление на фокуса, скриване на фоново съдържание от екранни четци и подходящи контролни роли.
Обмислете следното:
- Използвайте отделни екрани за всеки "диалог".
- Използвайте функцията за уведомяване .
- Създаване на кодов компонент , който реализира достъпен диалогов прозорец.
Интерфейси с раздели
Интерфейсът с раздели се състои от списък с раздели и панел, който показва съдържанието, свързано с избрания раздел.
Единствената вградена контрола, която поддържа интерфейси с табове, е списъкът Tab. Избягвайте да използвате галерии за създаване на раздели. Списъкът с раздели трябва да може да се навигира с клавишите със стрелки. Изискват се подходящи контролни роли и състояния.
Обмислете следното:
- Използвайте вградения списък с раздели.
- Създайте кодов компонент , който реализира достъпен интерфейс с табове.
Персонализирани таблици
Единственият вграден контрол, който поддържа двуизмерни данни, е Таблица с данни. Избягвайте да използвате Галерии за представяне на данни в редове и колони. Редовете и колоните трябва да бъдат отбелязани, за да могат потребителите на екранен четец да разберат тяхната структура и да се ориентират в клетките.
Обмислете следното:
- Използвайте вградения Таблица с данни.
- Представяйте данните само в една посока с галерия.
- Създаване на кодов компонент , който реализира достъпна таблица.
Персонализирани комбинирани полета
Възможно е да се емулира комбинирано поле чрез комбиниране на Въвеждане на текст и Галерия. Комбинираните кутии, сглобени от вградени контроли, обаче не са достъпни. Комбинираните полета трябва да обработват клавишите със стрелки и да задават подходящи роли и състояния на неговите компоненти.
Обмислете следното:
- Използвайте вградено Комбинирано поле или Падащ списък.
- Създайте кодов компонент , който реализира достъпен разгъващ се списък.
Скролируемо съдържание
Потребителите на клавиатурата не могат да превъртат Форми, Скролируеми екрани и Контейнери, ако в тях няма интерактивни контроли.
За Галерии без интерактивно съдържание, можете да зададете TabIndex на Галерия за да могат потребителите на клавиатурата да се фокусират върху него и да използват клавишите със стрелки, за да го превъртат.
За Етикети, настройка TabIndex ще ги направи фокусируеми за превъртане на клавиатурата. Ще ги превърне обаче в бутони. Не превръщайте етикетите в превъртащи се, ако не са предназначени да бъдат бутони. Уверете се, че Етикет е достатъчно голям, за да побере текста. Свойството AutoHeight може да се използва за автоматично регулиране на размера на контролата, когато е вътре във формуляр, Екран с възможност за превъртане, или Галерия.
Разгъваеми секции
Разширяемите раздели, известни също като разкриване, съдържат съдържание, което е скрито, докато потребителят не натисне бутон. Няма вградена поддръжка за тези елементи, но има решение.
Споменете разширеното състояние в AccessibleLabel на бутона. Например „Показване на повече подробности. Свито.“.
Актуализирайте AccessibleLabel когато разширеното състояние се промени. Позиционирайте разширеното съдържание веднага след бутона, така че потребителите на екранен четец да могат логично да навигират до него. Натиснете друго съдържание надолу, когато секцията се разшири.
Важни точки
Можете да създавате заглавия с контрола Етикет. Навигация, банер и други ориентири не се поддържат. Power Apps автоматично задава основния ориентир на екрана на приложението.
За други ориентири използвайте заглавие като решение.
Персонализирани роли и състояния
Няма вградена поддръжка за персонализирани роли и състояния. Следователно не се препоръчва да създавате съставни квадратчета за отметка, плъзгачи и превключватели от вградени контроли.
Обмислете следното:
- Споменете ролята и състоянието на контрола в нейния AccessibleLabel. Например, ако Икона се използва като квадратче за отметка, етикетът му може да бъде "Активиране на известия. Квадратче за отметка. Отметнато.“.
- Създайте кодов компонент , който задава WAI-роли ARIA ... и състояния , както е подходящо.
Персонализирана работа с клавиатурата
Не е възможно да реагирате на конкретни натискания на клавиши. Например не можете да имате персонализирано поведение за клавишите със стрелки или клавиша Escape. Следователно не е възможно да се съставят подобни на списък контроли като радиобутони от вградени контроли. Нито можете да създадете наслагвания, които могат да бъдат отхвърлени с клавиша Escape.
Работата с клавиша Enter или Space се поддържа с OnSelect. Това свойство обаче се задейства и от други методи за въвеждане, като щраквания с мишката. Няма начин да се разграничи източникът на събитието.
Управление на фокуса
SetFocus функцията може да се използва за промяна на фокуса, но тя работи само в ограничени сценарии.
Не е възможно да се открие кога контролите получават или губят фокус.
Скриване на съдържанието само от потребители на екранен четец
Няма aria-hidden еквивалентно на показване на съдържание на зрящи потребители, но го скрийте за потребители на екранен четец. Само няколко сценария се поддържат.
Следващи стъпки
Вижте също
- Създаване на достъпни приложения
- Достъпна структура на приложение
- Достъпни цветове в Power Apps
- Показване или скриване на съдържание от помощни технологии за приложения за платно
- Обявяване на динамични промени с реални региони за приложения за платно
- Използване на инструмента за проверка за достъпност