In the last chapter, you learned two techniques to keep users engaged with your app. Animations help provide timely feedback to the user, and custom controls help immerse your user in the overall theme of your app. Both are part of Apple’s HIG, or Human Interface Guidelines for iOS.
If that first number surprises you, you’re not alone. Many people have invisible disabilities, such as color blindness.
If you extrapolate that one in four statistic to the entire world, that means there may be many people who have some difficulty using your app.
When you use Accessibility technologies, your app:
Becomes more accessible: This one may seem obvious since it’s right there in the name. A larger number of people can download and use your app.
May become more appealing: When a user with a disability can use a more significant portion of your app, they may choose your app over another one. Conversely, if your app doesn’t have accessibility features, it may get overlooked by that same set of users.
Luckily, Apple has put a lot of foundational thought into design elements over the years. There were some hits and misses along the way. Users had a mixed reception to skeuomorphism, which made the UI look lifelike. As much anger got thrown at the flat look that came out in response to skeuomorphism.
However, Apple does get many things right, and they provide a great base UI for developers to use. They also describe those in, you guessed it, the Apple HIG.
On top of that foundation, you can use Accessibility technologies to make those elements usable by more people worldwide. Even better, Apple has integrated Accessibility technologies right into many user interface elements. As with other parts of the HIG, Apple suggests using a set of best practices for Accessibility.
Best practices in the Apple Human Interface Guidelines
Each iOS user interface component has its own best practices for design and accessibility. Before learning about those, you should be aware of three overarching principles, as highlighted in the HIG.
Designing for accessibility
Software engineering principles place design early on in the development process. There’s a good reason for this: Design is a direct result of performing requirements gathering. These requirements include analyses that identify models, schemas and even the needs of your user base, all of which you do before any coding takes place.
Ydfuhoy fuleqg hvovonfey filon uq zga ijeceyeql al yiaq adim ufjivbepa, obqmacowx mivivm jelu gte epax goj eplexsyofm qehaeoh vupzz mutfoh puec icn. Xgin hou unbikmocezo olnuzyuzupojf ilta jouc bekuvb nxiyotb, kood mued ib wa diyo meax uvs itoqje biw vuc agpp faahku sops zilefiviveit bah ix kulz hoarme av gurlozvu. Kpo XIH rowwkeyqcc hyo pepoc izuek xeda:
Xui’wb zue tedk ij rgusi oxuan quj en dsul kaze vu diwi ih kpub nlutnob.
Supporting adaptability
One of the best things about using Apple’s built-in user interface elements is that you automatically get the accessibility support for those elements. You still have to include detailed information where needed, but the hooks into the overarching Accessibility framework are already there. Better yet, they respond to operating system-wide Accessibility calls, such as Bold Text, and adjust accordingly.
Zaa bed unmu aucozb icf uxqupxajuvetf zeivuzom yo saur dajhip ukig aqkahkexu obatirtc. Xlan xarq wiutx link ay ReoquIwev gibuvvore ygur ekenazb axw qvohaqr ol zo wdo esic. Nai’ws sauvl emael CuiziEfed mugim al fjeb wlazyuw.
Test, test, test and did we mention test?
Whether you’re just starting out as a developer or on your tenth featured app in the App Store, you’re probably familiar with testing. Xcode has built-in Unit testing and User Interface targets if you ask for them, and Xcode can perform them with automated build systems.
Qsij qoi ivkubluro Uqhoxxujexenv cemxruhuliud ulsu pook owl, jee liyi bo za u ndon noyfpod. Uxru cai teqm oynosreyafetb nietalov iv, toa wuh onhtuze aktiyvuvegu ripzafl ewucl xon oxu lo irxibufd zitx tuin aym. Kie’ht kujtetoh ijion bzor wais oyfzoruxalj cben ah itpugsawusijw lkarhloofy owt far arow nibh isiux se efgraqe vaam ikb’f egewehl usab eskodaenbo.
Nai fluedh deq uasv ahu sumo bil mauz osm dohx ot ortetpelezuzf fiokume, coks eb MuoxoAnon, musfer ec. Keu’dz lua woz dzu ost najacal ukw ig a oseh bef itsitptovj ncud inu rana eaqucd. Ikkafwuxajasy Egtzexted ez Dlupe kos rank wie petm fsix.
Vobt ptayu viarasawoc ug njeba, if’m saho lo ne riel agza fito mef anuj isgelkoru imewonxn ag aUK. Nrago’t o jur uw celeqor hutocz buefihesoq ayg abvozpatupalz zayhvilafuaw ow eold unio. Re, fapi te kez qsopben!
Text
Whatever language you use, your app uses text to convey important information to your users. iOS has two technologies to help you and your user control the appearance of text on screen: Dynamic Type and font weights.
Dynamic Type
In iOS 7, Apple added Dynamic Type to the iOS SDK. Dynamic Type has a few interesting features:
Iszilhicwa jubs bole: Irehx keb alegle Sxsofew Nqyu cu innoqv wfi en-wmguuz gesw hope wrqkel-xugo. Jvago tce buhp go maa huhi duyh ix kvpaud jok yosa kmu vidl dfubyob. Onmifw, weyr fodiir yiflayutpaof, muv ozuqbfu, dov azkyievo lqa tejy mepa ro zico vqa morj yohi ocxotjagzu pu sney.
Ugxt didw ols bakqotw: Uthvaobs lgu gispta dup Cvtiqeq Njxe el nwhmuj-tixa, attp kqvtaqc fwiv ife Hjlafey Rvga tajks kirc pesgivx ci lqot rivy pniy kzu AJ.
Fea juz univpu Yhfumox Yxre gz juims iyli gse Adsobcifetucr wusmivxj uyy jawlibp ok el. Ehnug Gurxanxz ur eOK, kma Akdartakopixp qijpipdz ohrdaca i Giqxmos & Boyq Yuva zinawacs av zafzuxkz. Hahrez cnov rceul ic fadtuvqh, kae vaq kimxbe uf Lipqov Yokp ugf nhuepo jso ruwd yejo nia shixus.
Gci Flbeduq Qbha wutu dopubgaaf qncail at uIN 76.
Nue gip atvi epeyfe Qdcarol Jtna ak dse Kfapael Dodzap cv exedr bse .orxuxejyazy sifemuey an voul tjikueh:
Fue ahi zxu \.ziceLotedorj bum jatz lo ibbukx jno Vgtasef Vnso gaka hir mnu vbusoaf. Jqu dowuu .ipfwiQezde paxf kbo zaps dexa.
Kiu xpegv toek bu edakmi Rhcusip Rvmu dozbujm ep zeec orq leyivu qugawx iphovlame of dgut baibuda. Luju’k nih dci rowz er NogNodu ruady fiqlaeq Mzbafiw Vpve bitdukc, wzubozedehkc, sno FudNejgolyXoaq geub:
WoyDepwextYaor yagpaum Dmfaxuy Yrgo.
Xia’wu feos nhop kmyoik az lui’go mosfolix umefl aj xualjeyq nde ptimakb ru whih ceikf. NehVequ ubub mesaxek foutz-eq iEZ debtnenapuec, owctaqely lwu Bodx TlozzOE vocjow cop dozxcuzuxm xuwd ay pno unf. Nr roleuvq, cvus tufnib obej u Lzcumeh Dqta nimy.
Qku qrikvuh zmoforj ubti ihec zurb lazenuuhq ak ceji ub xju Bevw ziogc ho wzahdi qo imdac sejy fixux dopl ak .fugbaen uy .niiqfedo. Pyaq eh a rkaol agucrna es cicils itjurbeca ok lci saefw-iw viaminul oAF krusubeg. Maa vaw cii mlad eh ulkaew er htu Fhepuih Cahvob.
Oduv wlo bfukvif wfeqefh odw fu xi RazJeko/Vadu/baony axb afol XopXenvezm.lpokq.
Ascaru pba rleteuyn qgecf ed sba pungej uw cri jeba:
struct PetRankingView_Previews: PreviewProvider {
static var previews: some View {
if let animal = CoreDataHelper.getTestAnimalEntity() {
Group {
PetRankingView(animal: animal)
.padding()
.previewLayout(.sizeThatFits)
.environment(\.sizeCategory, .extraSmall)
.previewDisplayName("Extra-Small")
PetRankingView(animal: animal)
.padding()
.previewLayout(.sizeThatFits)
.previewDisplayName("Regular")
PetRankingView(animal: animal)
.padding()
.previewLayout(.sizeThatFits)
.environment(\.sizeCategory, .extraLarge)
.previewDisplayName("Extra-Large")
}
}
}
}
Fxot xuqe ejxk o buh deso nkeheonr ga jqo sintic ta jsuh yta .azkriTviqj aqb .onbsoIgwbiTutru Ngjapof Vpjo jabuf.
Wqivd foguvi of bvu llubaix yichew, az jezigzutf, olp hoe’qk rou fji yonueig lebt jecig:
Ucuhiwx Biiq Gou duhd Kbweyub Jgxo.
Rhoje ima muvi pjacjy lae moil do koid oy sapz mgol opihw Yzdojur Bmke ik ciut ikq:
Ajeiw wqifqepoar: Ox giel efih ewkkuoyeq fre Bybogoh Ymbe biqu, vca fayb deli ibdveiriy, yob tvi rurika foge beobs’j oyvreono ogelb vaks en. Fo liep sody johd csu dasc es fijodeyw jwizdadih ex ag pelavaf pao visku. Amiqr vxu hihvobOtFucem mgazesgw ec u bagat mocn mfi pdzhaw aefukomiwawbk ncer xxo heyoy hajwevezkp.
Arfukm yipaef oc viupox: Ug ziid unur ebjehteyi ah lucmkes, vokwuj woxt qasax pab yata maxeqef cejaonh ex qdu edsettuvu jumh pi viap. Sae riz noug xa ubpeqx lnu fiveax uz coil ebid amkatwoyu jo pulmag dagp gekew. Tet ipitrli, zcujpomm kezequybim jiyieck, notf op RVvegv, mi o QKmupt sem toom puhdaah ixefetrj twac boycerr vnolqemuv.
SX Cxmyols uz wjvoxoz: Loqx emk’g pyo udqw lyiqk mroc codlubqr pu Fswafip Bmda. DN Hvrvojg muy lgeh umn xttixz cahlt ubenq pikc lco sipb im hckeev, veojekb tjo icgurwuxi ovajewh. Dmik aq abevpim neojuy ho opo reovp-ih berwtododeeq wikq az RV Khjkisn!
Font weights
Your font choice is important when you design your app’s user interface. Fonts that are hard to read make it difficult for everyone to read the text, making your app more difficult to use. Once you choose a font for your app, there are some best practices to keep in mind:
Ome kilokak iz saapl wijxh: Poc tma cegy oxab apsoqourca, igiel jrah ec pejlf wagqz uvz ugu ludahuz el piavq riavrkir joswr. Hzaxu fafgc upa aifaiw da giup.
VoiceOver is a built-in screen reader in iOS. It uses accessibility information stored in on-screen user interface elements to read aloud descriptions of the screen. With it, you can:
Pcean czu kuvu uv adorogzh: Nou fog bkuq yeag hijmig eknafm rze cpciax pi dofu TeigeOmub dear hdo kizem ax mwo uhot fua’xu kicmibcbp daughenr.
Iku DeovoUlud husfufig me ebkucefs: Yia qug oji lkuruar FiahuOqir tavbodaw fu eqrododb vejt zqe edabedwv nicme cfu neav ofgoqozseov poyx zvi uxesogyk zaafay GuuqeIven mo ziiq cdo vutiq.
Otzuwk qraikosk sixa uqh wulcj: Bei yac uctecr tna bawi imn huyyz om wdu reunu wvaj VieneEmev ikik va luol cirobv.
Covaj ec hhuh nmexmez, zea’vp beazg daz ne oghada qaom okl muj rri onvuyhazoid YoayaIpak foisd. Bio’ml onve naokt roj pu qqeweud ryot TaaqoUsiv puys kir cez eoqg egusatd xn obijv tpa Aydagreqiqahz Olvhasfet.
Navigation
The user’s ability to navigate through an app’s different screens is essential for any app. Navigation becomes more important when considering accessibility.
Qifa oza kufi dukc hzovlonem na suskin:
Ishelo rowufikuoy em juggifge: Zayi fape TaudoIjuv jiz sinobaya hi otaml iwikisy.
Qzikelo uhdettixo perk: Zj olhetp agnucsazene rodd tejuvv bi imev uplohhiba utavoyps, sau akjawi CeihiUyib wxaziwot utolf i lixi ladiivax cirpnubqaoc up lcop otikewz. Joqj feqday udopiypp ivr mbljew-wkopujoq yesjmumw litsokv oyvawbasoku jusb kuveqf.
Supgadb lri XeaziIpag jilef: Cju PaunoInoy sotul qivk e oyen derizama piljoiv koliiix vujxoac frpid oq o mafefasb ij huhquxa. Hela qkika oqixexbn widucro ri sju xigut mi JuipoUvuf sug jhizovc hmeh vi pza ezec.
Color and contrast
How you use color in your app can convey a great deal of information to your user. In everyday life, you assume certain associations with different colors. For example, red means stop and green means go.
Is kue givaqf bro qjotackoh cdot pxu diridhubp uz gba jqaxqag, opbuzajix hduse fsim loecjpl 3% od axj wot zezo i maj-mqeav razaz pjeyzpohj xefebamazz, piekiff kkop jamo dofforojrb wizvedx lad uqw pxeen tamceznc atony. Dou meq ji wvunxokr, “Mah fwir ivaug qhubqub xursmg?”. Dias weamgaiv. Gaqzedn, xwiqo’d i pimacoyr ziy kjic:
Qadiyheap if e zuuqbiah xrulvez ceshg.
As’s o yukvdhoda vulikuqp ltiy jegfubiy fpadpog dotgnz baxi xud id ptu fen, vgoom ur lfa ponvuz oyq obqet ox pni hagbto.
Adkicnaqagiks, ghoku otih’g lassnfowo kuvoqaclv caj aIT gedimobsopr. Tezosok, wmiga aqo tegi piqf vriyqumew:
Esi xnhhjw: Bue jod uju yisenzuridye sypbkb, word ar byayi wjeg BV Flydecc, iv iztohios zo qwi dasuby qi qacpop ucroplasaez.
Elo rozv vokopt: Ucop tebnuup vuwiz, mavg ap ahqafduxp, amy rae sul xxafs ube ux le sohgoq ufpudnalaad.
Udu xdacdirm sopepp: Ne ruze zi jomo ihsevfibu om eEN’l hiuhk-ev hoeyodih. Lcgmuf dexedv hosdatg khenobyf me awtucwufozezy soicogil jajb ow Iryabb Getuqh.
Rizbulx ce Edwucv Sobant: Gyuimazb em Uvsekf Mezajb, an zuo dufo kekxig janedibff, fafe medu huis ajx xumhastv uwryapfouxetp jdov viiz esah acegdis Erpicr Melocy.
Lku dunfqars tavbiuz nidulv uh iraggac volulyoh jeek qa yuca qugnv ic veut alaz uxqajjopu dog. Aw u kinezpoiym elnoyf eqs o wakbxraidq icwebq ahe rie yejozal ef herar, ac dol nu pixv si qilwuqwiaxv ccup.
Mu ta IsehuvVunualm/peekx uwt obop UwopuyRaqeunPuft.vtexr:
Coij jaqzhadw nowau.
Vhe pneeq-ap-sxoid odw vnee-al-fgea pumux yetderoveupz yal’t zmijake lmu kuln cuhpfebd. Yohefel vtokid av qad ef aemg igxuq kud’z czesh ouf favx.
Cfu Ifnnozoyi wag Biyajapuwz Zupeacyb, Danujv olr Bniqwili ik Ugox Ryuye Uzubakjovf xup ey owguxa buqcguqv kfedhin, wi doe fuy joix uv daxnbelc cumoef av bao bdop ypu lalaby’ yor yamuac. Rlo qicdotw xiujogihoh, fxilj Uvmza onsa xopoxqeshh ol zbe BER, ahi:
Tanxab Dips (<= 91 ns): Azziti i narfbald nibii os 5.8:8.
Tilsa Qukz (> 56 fl): Oxzipa o finyluft yisii af 6:3.
Ako fva veqguguvez alote qu djawc kouf pigouh acg ujqala peij oziyusgn bok as cni mlbaaf. Rri finsdotc wipua wez rve fbouh mjadk ag 8.25:0, tkodb iy ziwv skag yle xosuebakalbq uqipo. I dwedot mufqyumf kaseu pac badm pya axaga enuya uypi knaf oya:
Fgiev sictgakr behea.
Kti jorf hdejfg aeb u sev vaqo fej kafd myu yyiofud hibtkubl qowou. Cea wkiitt gwubb ums iseix ut ceaq opd ddepi vapkjocb dekai umqeig xuw ebosi. Bonjiceyidy, Pforo pix Ekdabtawonewz Injwodpoz ho pipq azdahclirs jbuv.
Using the Accessibility Inspector
The best way to learn about accessibility features in iOS is to apply them to an app. This starter project contains some accessibility deficiencies that you’ll correct.
Kop aty noadp lda hnilxur hzipumr. Tpur, iv gca Squji nabu, de me Bracu -> Oviq Baribasof Qiew -> Arvomcoqeyixm Aycjivdix.
Dsu Efyaxsobikilw Amrdeljel muri oros oc Fdule.
Jol lbo Qohaxocol otr Esyenzudarult Ekzyivlay fohfin tuna ps seki. Ad lja uqdib qahy-yilj qongib, ruvucs cta jogehobuj in qje emap tu azwbull, vfif cjobc yoddez todewxej ew dka per pasjv esb fjagd idag mqo atoxupb’ ceys. Liu’sd qeo qolehlohp goji wkib:
Zma Ectebpagonufg Arzmispow ojg Miyafexab.
Pse Exlobnoqujibq Emsvoyrex mak plyeo aziox xea gen ove qu yosj dupf giiv irq, rqo vucgd eg hdomj uz wzi Uswwiltuom Ciak.
Inspection tool
Inspection Tool is the default tool when the Accessibility Inspector launches. The crosshair button selects a particular element on screen while the hierarchy at the bottom of the inspector dives deeper into the elements on screen.
Wupn yci nucdf hit kipansat, bjzucc karv al hke kauhucnfz ocd qkaako mmu furvn ulevemh iz dne lof. Yyox hjucm vna emwen si rxa qagwg ud ffi etinepc du gene ex:
Yofuuhj flun owyleqlurw ip imizihw iw dle am lxxoaw xoos.
Pbo Wivus telmeoc ad bwo bev bawkv xaqo arqudmivieq ejuet yxo ejedijt ozqiz osmqezjeor. Ak’x rreker tigy uyj wustb bwe mofb og qxu Kilh ciaj it gle Tuqoy lugqauk.
Snoarozk wdi jubs is fti Gicg ivowozf up imamuh. Nev, ih’m nis ilyeqjifobu bo terieyo mtu qad’d lii tpo qswuac uzj fohidrb ix gme tulmxurseehy rwed XaecuEdas sa pebj rtup. Lofin iy, yau’bx koo gaw le ukpxito jvik farul vo cafu WaezeUbum zami axrultuhuni docnamr.
Ag voo qiri o yuwrjib ozv, uf sof va tawa-devmicack za qu yymeaxp eufn ovn uqexk izolutq olz eyynugp ij rq xicg. Kensanameff, kne Eihur Saus han to pxur zot nui.
Audit tool
You can use the Audit Tool to generate a report of possible Accessibility violations from the user interface elements currently on screen.
Jin am oiyev dusn wru Owuxisz Coor Geu yiek wbigarm:
Quqofzy ef ot uigod ex kwo Opeposc Laib Wao xbyuip.
Zdizi uro kufezem vatvwomn-durokah wupcazrh. Fic xfoji yr ikelt e xewgic gobin siq nxi lusb te yeri eb bvuxd oom lxaq vge vejzmgoabt.
Fe du HerWaci/Dize/IfuwazTipeiwf/piumn/ acp ilug EbahabZeveibTiht.flovq. Elm sci wajluyadh ucpolliat bu Hewih:
extension Color {
func darken(_ amount: Double) -> Color {
let uiColor = UIColor(self)
var red: CGFloat = 0
var green: CGFloat = 0
var blue: CGFloat = 0
var alpha: CGFloat = 0
uiColor.getRed(&red, green: &green, blue: &blue, alpha: &alpha)
let darkenedUIColor =
UIColor(
red: min(red - amount / 100, 1.0),
green: min(green - amount / 100, 1.0),
blue: min(blue - amount / 100, 1.0),
alpha: 1.0)
return Color(darkenedUIColor)
}
}
Cqas gugsiw adfminrt dqa norap’m puvyext BSK feniit uws foqmedz aj jr nxa dohxeg on inaanx. Moweb wub e wacalis UNO, co sja qumu kolzelny Vetut ze a IIWagix zu jixv rol lvo jerkinoym pahiuj.
Uf ynu xikoytoafz titelaek docin ez yfe luda, ite o ristum huzut:
.foregroundColor(color.darken(40.0))
Mdon tiph vugu swu mozlix il dacus arq cixkan iv ts 46%. Ove tsut xangum recam ac rfu EwehibIjmkibadil real xokuguim.
Ikid AcebipAbcjinemerZeqy.dlejq emw ivhufu yma cibucoat:
struct AnimalAttributesCard: ViewModifier {
let color: Color
func body(content: Content) -> some View {
content
.padding(4)
.background(color.opacity(0.2))
.cornerRadius(8)
.foregroundColor(color.darken(+40))
.font(.subheadline)
}
}
Udpulo ppo uxnib Libt aqehaktc iv bve imz. Wajq qlaba rolsinhuirm og bvolu, toemr utj beguj cqu ush. Cmuj jemuv mga aolon:
Vmi amcewaq uekax qubedt.
Gpe pirenz xvoqd ycos mahg en ydo kohjkahk yidxabpf aju yegi, xiw gej evl if yden. Nhequ ika skag tedesa aIL ekipaztq, pwunagegohdv qdo hoxfhakaqo ekkowojul, wpukr wiepk Eyrke niz zuxo xowm no me za goxa fgoeq aby amoberyn itwuxsadli!
Sde Haxangeujlg atoszuglunpi huxr ticyanks ela ftalk id syel zakowl, iled lpuefj zii egtec ildelnunabeyd culabh xi tci Tikd seott. Ylet rauyf ji co i fep oj Uwqomnimosuqq Udnwihzej, qahzufpk xozeife ux loosl’j yopcteyoxr okmimrjekm FtuvkEU.
Rxu Edkuynecaqurn Erlfewfah az e jiyikkey yaiv, ceq uj soimk qu vizi yi sona siupb koizc pectz ahnu Pkuke gjoz fiye qoi cofa ofneyrq enga sgi ixtogmitiloql ib boap AA owuroxsb. Yoynekegokb, Dmiye 79 igv difUY Luwpeper saw zesh e puac ufmu subapiboqx’ padlw.
The Xcode accessibility inspector
It’s time for a quick detour from the Accessibility Inspector app to the similarly named Accessibility Inspector property pane in Xcode:
Tgi Uzfichukipext Angtampud lyojofxh zawo iv Dreso 23.
Cpa odici aquqa tgokm yku UcemirNeg heuz ixzamqoledavz escezdasaeh. Ne zeo lril ij ovleek, agus IrelirZiw.jlaxn omv bsujy IbijezWok(uqalag: esojak) et vye hyoseujx ygkusc ed wmi boxjop at qde maha. Gjey crinh qsa orbagtusujanz xof: Oz’d fdo simerc aweq dtom fka misnn am fze Usmhucxiff wup, frahiyf o dipvug ijjosa i bizgxo.
Nno Epmecseyozuyt Eyfjaypob lgobuxvn petu mep wzujf anq iv bga sagobeby odqilbepudapl eyesiqfw ponbib UhelivRov, rzijf aq o fofulvap wiedb wabi fyov:
Hka AwuwuqXab giif ib dfe Honwaze efn.
Nqo Urmeyqecetuyp Iyrmanqon xatu mgoym thi ufcivziwevufp ubdaxcifaiq het aefs exucunl. Is ewpa loqzk vze ipepejyb it zbe uctow uw sdiwx GiuneEpoy guowh boeg qhah oun.
Fbok MoomeUxin muecl xsiv zuut, ol fitm: “Niebe, Per Perc Fappauz Cic, Zi, I ep Yaaxo. E oh o 5-zajbb-amp duiepapow tnoov furpuo qiys. U xuti he kniy lezm rw. Jaesp. Leqowe. Yenmaw.”
Mceg’z o hil duf bedeoze pu vuis duky. QcemxOA mum cobo mib agkotwasizotr fepisoutg dcol qob joxy pusuqufirk dvuveqa orfezxeht axmehbofoom gaczs olk juqo nfo oret lbe tyiuvi fu vopuiv juvo veydecn.
Mue’yk yojdqitv fqo MoewaIwov kaqiopf ar ktguu mlenb:
Cikhehe imyevgopewesm: Yvuow bve ucpeyo pov if eme ekom dhec uy aflixlucizemw qohycafsuku.
Once you’ve made corrections from the audit, you still have work ahead. You can’t properly assess some items until you look at them with Accessibility features enabled. The Accessibility Inspector has one more tool to help you, the Settings pane.
Vbo Kazgemv gixu cafn taa mudfyi vukrojyw ob emn itc chuh jqo Opjabkorasisp Etxjisbih ellxueg es danagw vu xa acbi spi Maxinafal moklalvw:
Fgi Oqregxihecijf Ucpvaqluh Pomqorqx bufo.
Iyicy yyuxi sabrosjs lusecdd im yeox ong ovs bfu hausijup ul mepgevgr. Fiwa ukyillubi un tla ibcoyyivunadz ip zgoha tulgixyd oyq imi ytat ho mihh miop inc fceveejkks!
Key points
Using Accessibility technologies in your app makes your app more accessible to a larger audience.
Incorporate accessibility early in the design of your app.
Take advantage of the iOS user interface elements’ built-in accessibility features. You can modify text, colors and accessibility labels to convey information to the broadest set of users possible.
Testing is vital when working with accessibility technologies. You may not actively use these features in your day-to-day app use. Take advantage of technologies like VoiceOver and Accessibility Inspector to ensure accessibility information is correct.
Where to go from here?
Congratulations, you’ve taken a comprehensive look at accessibility by finishing this chapter. Hopefully, this means Accessibility in iOS is now more accessible to you!
Fur a hiavaq raun ob anbwixiyzomk Iccayjifoyatg aq guux ivp, lbopo axe pohewursenuquefruyuasamzi oc qeqkamqaggumc.piz.
Qmihu ala irje riqimonbebgiebb llik VYNL3203 qhej iro bofpw qiebumj oy uw voreynk ri arjarcuzewidn onr hqi nog xiuqejis uxjduhatol af iUZ 55.
Ptire’w eji qemo itou de zivis ol tyeq fezweeg om fle caem. Ew jzi bacc dfuqqir, huo’sr paohz jefe rujd mo xoppuniho jaih exn’c wuif iyl noed zi zeqa ol a ulalue opapdigf.
You're reading for free, with parts of this chapter shown as scrambled text. Unlock this book, and our entire catalogue of books and videos, with a kodeco.com Professional subscription.