Accessibility (a11y) — пракса креирања апликација које могу користити особе са инвалидитетом. Према подацима Светске здравствене организације, преко 1,3 милијарде људи (16% становништва) живи са неким обликом инвалидитета. СЗО (извештај 2024) наглашава да дигитална приступачност постаје критично важна. Хајде да видимо како обезбедити приступачност на iOS и Android, и који стандарди постоје.
Главне тачке
Accessibility (скраћено a11y — слово a + 11 слова + y) — особина производа да буде употребљив од стране особа са инвалидитетом. У контексту мобилних апликација, то значи: подршка за читаче екрана (VoiceOver, TalkBack), одговарајућа величина текста, висок контраст, правилан редослед фокуса за навигацију тастатуром и одсуство анимираних елемената који изазивају вртоглавицу.
Инклузивност није само етичка, већ и правна обавеза. Многе земље имају законе о дигиталној приступачности: ADA (САД), Одељак 508, European Accessibility Act (ЕУ, обавезан за апликације од 2025). Према Business Disability Forum, компаније које инвестирају у приступачност повећавају публику за 15–20% и смањују правне ризике.
У IT Sectr-у, проверавамо приступачност у свакој фази развоја. Наше искуство показује: исправљање проблема приступачности у фази дизајна кошта 10 пута мање него након објављивања. Приступачност није функција, већ основни захтев за модерну апликацију.
Apple екосистем нуди моћне алате за приступачност. VoiceOver је уграђени читач екрана који изговара све што се дешава на екрану. Корисник контролише уређај гестовима: превлачење удесно — следећи елемент, превлачење улево — претходни елемент, двоструки додир — активација.
Accessibility Label је текст који VoiceOver чита за елемент. Подразумевано, iOS користи текст дугмета или ознаку, али за иконе и графичке елементе потребно је експлицитно поставити ознаку. Accessibility Trait — особина која описује тип елемента: button (дугме), header (заглавље), link (веза), image (слика). Исправни trait-ови помажу кориснику да разуме како да интерагује са елементом.
VoiceOver подржава преко 40 језика и ради на свим Apple уређајима. За програмера, главно је поставити исправне accessibilityLabel и accessibilityTraits за сваки елемент интерфејса. Ако елемент не треба да буде доступан (декоративна слика), поставите isAccessibilityElement = false.
// Swift — подешавање приступачности за дугме
let shareButton = UIButton()
shareButton.setImage(UIImage(named: "share-icon"), for: .normal)
shareButton.accessibilityLabel = "Подели овај чланак"
shareButton.accessibilityHint = "Отвара дијалог за избор начина слања"
shareButton.accessibilityTraits = .button
// SwiftUI — још једноставније
struct ShareButtonView: View {
var body: some View {
Button(action: share) {
Image(systemName: "square.and.arrow.up")
}
.accessibilityLabel("Подели")
.accessibilityHint("Отвара мени за дељење")
}
}
Код приказује подешавање приступачности за дугме без текста (само икона). AccessibilityLabel је оно што ће корисник чути. AccessibilityHint — додатни савет о резултату акције. Немојте користити фразе попут «дугме за» у ознаци — Trait већ говори да је дугме.
TalkBack је читач екрана компаније Google за Android, део пакета Android Accessibility Suite. Као и VoiceOver, изговара елементе интерфејса и контролише се гестовима. TalkBack подржава преко 100 језика и ради на свим уређајима са Google Play Services.
Content Description — еквивалент accessibilityLabel-у на Android-у. Поставља се преко атрибута android:contentDescription у XML-у или преко методе setContentDescription() у коду. За елементе који не могу да добију фокус (декоративни ImageView), користите importantForAccessibility="no".
Focus Order (редослед фокуса) — редослед којим TalkBack прелази између елемената при превлачењу. Подразумевано, Android користи редослед елемената у распореду, али се може променити преко атрибута accessibilityTraversalBefore и accessibilityTraversalAfter. Ово је важно за сложене екране са прилагођеним компонентама.
У IT Sectr-у, проверавамо Focus Order на сваком екрану. Грешке у редоследу фокуса су међу најчешћим проблемима приступачности. На пример, ако након заглавља корисник оде на коментаре уместо на текст чланка — то је грешка приступачности.
WCAG (Web Content Accessibility Guidelines) — међународни стандард приступачности који је развио W3C. Тренутна верзија је WCAG 2.2 (2023). Стандард је подељен на 4 принципа: Perceivable (уочљив), Operable (оперативан), Understandable (разумљив), Robust (робустан) — скраћеница POUR.
Нивои WCAG: A (минимални), AA (средњи, законски обавезан у ЕУ), AAA (максимални). За мобилне апликације, ниво AA је довољан: контраст текста најмање 4.5:1, подршка за читаче екрана, минимална величина циља 44x44 пиксела, титлови за видео.
Ниво A — основни захтеви: текстуалне алтернативе за слике, контрола тастатуром, контраст најмање 3:1. Ниво AA — средњи: контраст 4.5:1, подршка за скалирање до 200%, исправна заглавља и ознаке. Ниво AAA — висок: контраст 7:1, знаковни језик за видео, потпуна гласовна контрола. У пракси, већина компанија циља на AA.
| Параметар | iOS | Android |
|---|---|---|
| Читач екрана | VoiceOver | TalkBack |
| Ознака елемента | accessibilityLabel | android:contentDescription |
| Тип елемента | accessibilityTraits | accessibilityRole (Compose), важност фокуса |
| Редослед фокуса | Аутоматски (може се променити) | accessibilityTraversalBefore/After |
| Скалирање текста | Dynamic Type (UIFontMetrics) | sp (scale-independent pixels) |
| Смањење покрета | UIAccessibility.isReduceMotionEnabled | Settings.Global.getFloat(... ANIMATOR_DURATION_SCALE) |
Табела 2. Поређење iOS и Android API-ја за приступачност. Упркос различитим називима, концепти су идентични: ознака, тип, редослед фокуса и подршка за адаптацију текста.
Тестирање приступачности — провера апликације за усклађеност са WCAG стандардима и исправан рад са читачима екрана. Минимални сет тестова: укључите VoiceOver/TalkBack и прођите кроз све екране апликације. Слушајте да проверите да ли се сви елементи изговарају, редослед фокуса је логичан, а неодговарајући елементи (декоративни) се игноришу.
Аутоматизовани алати: Xcode Accessibility Inspector (ревизија у Xcode-у за iOS), Android Accessibility Scanner (скенира екран и проналази проблеме), Axe DevTools, WAVE. Ови алати проверавају контраст, величину циља, присуство ознака и друге параметре.
У IT Sectr-у, спроводимо преглед приступачности пре сваког издања. Процес укључује: аутоматизовану ревизију (Accessibility Inspector), ручно тестирање са VoiceOver и TalkBack, проверу контраста и скалирања текста. Бележимо проблеме у Jira-и и додељујемо их спринту. Ово нам омогућава да одржавамо ниво AA WCAG на свим пројектима.
Често постављана питања
Подешавања → Приступачност → VoiceOver. Или три пута притисните бочни тастер (или Home тастер) са укљученим пречацем за приступачност. За брзо укључивање користите Siri: «Укључи VoiceOver». На Android-у, TalkBack се укључује у Подешавања → Приступачност → TalkBack.
За усклађеност са законодавством ЕУ (European Accessibility Act од 2025) и САД (ADA), потребан је ниво AA. То значи: контраст 4.5:1, сви елементи имају ознаке, величина циља најмање 44x44 пиксела, подршка за читаче екрана, титлови за видео.
Да. Приступачност помаже свима: старијим особама, корисницима по сунчаном дану, родитељима који држе бебу (једном руком). Поред тога, то је законски захтев у многим земљама. Инклузивност шири публику и побољшава корисничко искуство за све.
Користите ове алате: WebAIM Contrast Checker (онлајн), Stark за Figma/Sketch. За WCAG AA, минимални однос је 4.5:1 за нормалан текст и 3:1 за велики текст (18px и више). За AAA — 7:1 и 4.5:1 респективно.
Резиме
Развићемо мобилну апликацију под кључ
IT Sectr креира iOS и Android апликације за стартапе и предузећа од 2017. године. Саветоваћемо вас и предложити најбоље решење.