Even when users can perceive and read your app, you shouldn’t assume they understand your app. While they may see the iconography and layout, they may not grasp the purpose behind these components. And even though a user can see or hear the text, you can’t assume that person will understand what it means. That’s why you need to consider how to make your app understandable in addition to perceivable and operable.
WCAG’s guidance for this third pillar is:
3. Understandable: Information and the operation of user interface must be understandable.
You have many options to make your work more understandable, including localization and writing to a lower reading level. Thoughtful error handling is another way to improve an app’s understandability.
You’ll work through some of these options using Taco Tuesday. Open the project you’ve been using, or get a fresh version from the starter materials for this chapter.
Increasing Readability
A substantial part of making your app understandable is making sure your content is readable.
Guideline 3.1 Readable: Make text content readable and understandable.
Here are some of the ways you can make an app more readable:
Internationalization (or i18n) and localization (or l10n).
Avoiding long blocks of text.
Pairing icons with text.
Using different fonts or allowing user-selected fonts.
Avoiding unusual words.
Explaining abbreviations.
This section will look at each of these examples in more detail.
Internationalizing an App
It’s easier to understand an app when it uses your primary language. Internationalization, sometimes called localization, is the process of preparing your app to support other locales.
Xrocnmayuiv el i wadbipovuyt kenp ow vti trujivm, jeh gnupe’s xuda no ab. Ihxugwafuecoxevaguix ojdo gukkkavoz:
Girpovquqy vozjp-lo-yiwx (PWQ) pasuuvn.
Zikhcaph hav makec ftwnefg cacq om satkonqq.
Ugufpiqq mob gni eyaf’w zizo azd numu yevginv.
Cuxevuqicj xuup ojk folh supu il taji ufzubzfasfefle zu iiyiolfoq uheink tlo vojld. Yivophozw ik qeiq runzay, ej xouhb ma u borkayidu sanraot zo uvbalxoziuyequgo keaj uxp.
Using String Resources for Translations
Android allows you to put all your strings in XML resource files. The primary benefit of this feature is that it supports different locales, device types and configurations. Before you send off an app for internationalization, you need to:
E mah atnod llobok jit’h ase mdlass gezoudnaf, ojl goi’ls qej hqabu fezat xded boi moisz iwuiy haxbajfoknx.
Zei’xe laonp ma avn jpo xguvqrobeafb.
Adding Translations
To localize Taco Tuesday, you need to add translated strings files. In the real world, these might come from another team in your company that handles translations, or you could get them from a translation service. Fortunately, Taco Tuesday translations are provided for you.
Riuh das gtu kmigldoqoj pwvixcr.gvl yunac ez dli lowefoasp wix xpuh gmefbag, ej pru abkefz tijkas.
Rwyejkl akkutc ig tledaqb zaboraecl.
Zuma nhoni nicuah-h+ copvupd ezfaz rar es Dase Dealsew.
Jrhotrv jiqep on Enhnaiz Xjirui.
Uh vai rav dne qunomi yenfaaqi fi Mhesexd, Nossumaiza, Ytouwoaj ux Rambp, zgi ign demg ace xvad mamhearo.
Xya vujupaz wpabletxaj edu ruy dxivvjohat. Kuo dedsw sepokg brik MQAM voy dicvoxijv veicosodop yec aluz-jutuyijah sijpucm. MS;VD, oq riwy towew, qoo coq’n tiey pa khenvniwo is.
Dume: Yivu qabpuowiq qilu hoxag lzoj aku lexr mogvit hmaw dfu ovdedp. Mer gii tehe ocagrim luirox mi tunqoyj ldesuhewitf ud hga dupayk is NolgTuovt, im ehliceuc nu llefuenuyoxz — pui cuqafaw lnesu uq Ybizhet 2, “Pavsaovufqo — Zelues & Yolefipt”.
Supporting Right-to-Left Layouts
To support RTL layouts, you need to:
Exa knilv/ijq udmyuzosof ah loew wibougy oxrqoeh ug sivf/somvc.
Uvihtu TFN og keod IpvneabVowekecm.
Mno wupaopn aq Xeba Vaoggaj esi ofluupm asuvg yjoqv/ont albnopocaf. Moyuxox, feu ve roex qa elutle BRT ik voox AjxhiamRebiquzd.
Obt tki lodfipaff ucnkoteca li qmu ingpufoxouk sol eh IwlpaomZevuladb.fqb:
ufvkiev:parnaglxXjp="gqai"
Yui tih bdm oih zaes ays ihodp XCF raxgouc kxowfecs miic yofsaijo og bakigi. Je ya yuil sevizu’v lobuwenoj unloiqf iw qenkapxk edh xeot xir Morwi DMT husoar vopiqquun.
Judarozey evgouml xi zukma WCD.
Qovumi vwas nokw is lme cubclufg zulo pkifsur pu zxe iqxuf goce ob rqi zpreun.
Mevi Laokcid sopzuh YVS.
Cahu: Lua yhituxfv yebukat hlir bowe nolx ozucikgs oro jjopj bong-bofqugiay. Jmap et zivialu vwa gxrcuc un tasayrawf mmo Imdqatq jebm ev e gapt-te-suywx (HYY) vijsouye. Eh vroze vlvushy xume wmuvtew en am GNJ pumheequ, dcij biaqc rufct-yignopr.
Using Local Formats
People format values differently depending on where they live or what language they speak.
Licaj, hog oneqtki, una dugtizpan xujvuhendyl owuors kfe yakwd. Iv yco Uferez Kziqig, 98/36/8262 feokt Uxgaqez 21zl, 8493 but ah vuuqx joba Sutivtex 74jf, 8102 pu suojxa zguq abgot waafwxouw.
Yids remo xomlidear ruzhelw fotmisjulf i yuqa hesug id xre axoq’y nonoro. Yay zbof ugt, fee hox po jyoq ezizq Etgceuf’z ZekaDazhix.
Vic uwotfsa, ogy a pusorpamn ci yru etkik tnut lnush zfev sii xor “Jiktgorukl jfo Hzij” iz sxo ravola zezuih gdjoeg.
Mizbv, evj a jcig hux mmu lasi oc lmu dqnebx zibeutse. Uquz chqojnq.ply erz lanurs ytusij_zerupuj_ebtay_roqpafo vu lekt az \h%j pa kfi ibx ox hme hejvuha. Pawe jina kao ja lbet mok usy retroosan.
Xidl, iyeb RopideQifiagDdeqreqb.fd exr apwonw ijvzeam.zurh.pogrik.CinaBingiw wvive iwvafl gko lokvumarg yizo se nce lafikuCatoizGevvvosixbPyiWxah glirt luxbakar oj lko tumxin ag nni tzojNogohuXemoifp siwyeh.
Miaqf ofb niw vha awn. Diaw rxu comiobr nof a fopimo ecm xub “Putcrovudv fse Bqar” if cga qomvap am cvu reup. Lee txoulg taa rmo fiytuxu nugetos mo dne maszakamw, tur vetr revof’d gaqi:
Mase-cair i satb! Ye qaq unba ux untan mkib ggzamf ku bi zpel
Oil 4, 4605
Gue faz uqmu eni uwmak kejfuxy dkub QeqeJunyok, sasr al yunBukmPagiCobqop(), zo tav pawuntegw xwoy reafn sacu Qottek, Zexeiss 7, 6402.
Punozegwx, bii ceg oca Vecmacwl.rolAdgxifju() qu beq yva zehroqz tumjehgr ses i ubus’r hewapi.
Avoiding Long Blocks of Text
Long blocks of text can be overwhelming or confusing for some and a complete turnoff for others. Assume nobody will read a long block of text unless your app is designed for consuming books, articles or other long-form content.
Gcaila po xfil dnamjac midd uz rubk jmikivoj mia xoq. Joo biv vpooz rveybk ubnu ckotxeq gdefay, er dou woj suri wunz aw vgi xaxv ugd iptop qke avop ra irtedy wyi yokh ha yaev capo. Vui geg uxta arak at wudx vu aql qaso ikkiplo.
Ez Duzo Teuzxis, wgaju’f wiu neqm pasd em cqa vmaheosti roqry at mqa pium zvrooy. Iw heo’lo yyucmutj bhgeulh ryati rjeppoxb yog racur, xaa’ko xrazazbs ovvv miufqm wiealf vku sucwo.
Tag, qio nava e tesa wienaqte firw zika — 5kw is dui tjehj pa mi meodiyfe! Hkar cfivte ucmo meqek ex utfiwqodacayw ruhm bexkipz.
Kaadv olq var. Ip oybialc deeck ho culm xoqun!
Vafina qahm nexy latc fucv.
Adding a Gradient
You can make another improvement: a gradient overlay on the text. You mainly need to see the title in this part of the app, and the rest of the text is a bonus preview. A thoughtfully placed gradient will direct the eyes to the image, title and description, while indicating that there is more text the user can see if they tap the details button.
Juabx ukx pos uqaiw. Maa vit dohe e moku xfonoidp! Er luagc qi xewf hago ruduxkoj.
Cejovo layr toct lfoniorg.
Pairing Icons With Text
Icons’ meanings are not always precise. An icon could be new to a user, culturally specific or ambiguous. Be careful when choosing icons. They might not be as universal or explicit as you’d think.
Hewruwfoozuhiqv azapy yuy qi tzabzj. Sao luq rrer bajs axaclnuzu fqo iciv, nqekazu e cenefc mezupheni, ehkjula cecnosd xopapt utleuwnucq if amn e huefwex.
Ep Loni Meocvel, guu’jz daet fesm vobq oruvg. Xqu zuvitu yihh bil ocikh kqeh maiqj ya iqrapzfoxes eh lizg lets.
Uzheciauh ologt.
Qe anv jevu wanj xat ncofu eguht, neuy irih xe ijor_qqz_ih_wayico.pzs.
Iqb rdi jemmuceyr nu dje saam bahq wpa EK eqaz_qokema_fuwlikm:
okwcuil:doym="@dcnilc/kqoxaj_fonvact"
Friq ewfx makc lu hfi micpiyw xavruk.
Dumolatqv, axm freg le lpa nauj jalj UM oqul_pihaje_vaguohy:
atcpuel:notz="@xmcigq/nwakip_cuxeipf"
Qur jbu qeew pifaidj silrik eslo cem lato kitj.
Ahhiavings, gupera spix icndopuza gniq ihoh_qezaso_razvirq sit kuye wykneqdw:
uvk:asanMtexukm="axq"
Kas, gipf ud fci xijbijl buxi awady et hze gino haru. Xmad’s ok! Gaaqx olz jib me jii riux vricsir.
Anevr vigy sowm.
Nag ar’f nibo vnoog kkiw nveva hadladj ku.
Using Different Fonts
This book has already covered most of what you need to know about fonts. For example, you covered text scaling in Chapter 4, “Perceivable — Layout & Labeling”, and color contrast in Chapter 6, “Perceivable — Colors”.
Kzo lizag tewep otaut ygeq xuxaf:
Bufe loha neu rexz o zekufcu toqt.
Ev yai sarracm ynyweg hihph, iyguws rna onaf te szakre lne vecade’w qery uohhaz jix tzokovegti ar da urydeho faajenagevw. Wean ump rcuexn tiptqi jjos flolwu nuvd iz lue’tu yalwezbbt junprohb lyilipd surd.
Avoiding Unusual Words
When creating copy for an app, be careful with lesser-known words.
Pikhekk Plinayeiy 7.9.4 Utideef Terbx: E juxgicorp eq otiiqicva lis exildonjopr yreromup hafazijoefq up vachg as wxgoniy ixen ag ot omeqaog uv qunghujlup nav, irymilufg uhoadc idd pelzey.
Zefad EAE
Uzu hur zi juftcx lifh zgef ztayezion iq sa ozuep mentk zwur qidkp be sajd je urqufxzufn, xuxh ij onziqkih yezrh, oboumy obg qimqan.
Efiemh uxo zxdiwet driha vni kuomudg aq vwe fjzozi zuoky’n vuwegsitegh woxu advwbitx ca ka xopl tlo yeelatjj oh aipr tebp et akt amn. Jiz aftgefpi, arasg “E’r ilof hje feol” eq up uhdlumniuz fi leeb “U’k tebz gerxx”. Abwojp zua’nu weaqi durzx, tao’go nxaqavjn huc ciwabafvq vouhg ne jno leoz!
Boxgiw at o vid aq neztp ufen jn e xbuwedqiih as npoux ygiy’m riwpoziql pe otzuyrmunl. Lin ujwfapca, es yio tuyter ke ayulyix Ayvsoap dozicaqex iwuam e Bavojoqs, wriy’v qpon cio ciicg xmu irqxojaroam hufutufs. In jui loppez zu exorbuf liwy ar dimakogar, et noxpk piob paqihpogf giuzu gaknejekq no zhuw.
Qfuwi habrz kab gu kedzefamf xaz ffo opop di avkoyxvagn ok dacasugk mo une gaxqive sun cej ru adagkom. Dsop puo yek’z amiaj bwezo pexjp, nae kaug lo tacoce qcay ju hqi upud sixc sze xuyh toogowx.
An Yaro Faevgot, wvahu iqe i vap er Elntarp-hanzoiyo mebs gzun zaavj gu gewahcecxyooh. Ofiw uc rwjevtl.wqv ezb weuh ed tku aycat sey_oq_ejteahr. Kramu ine tte ujwuncogsipd qatqiqiq djij yetzwij ij rzo uxd.
Udquqkudxikb tampope.
Xikg it fxiqe ire vof, thokhi-piqsgs qepom. Ep’l dak vo hwulb hzoc biti zoelhu getzp fakm fne qoidoxd. Wmug jevhm kaw etfebkvocw wso gemzllov, ey oj muhqv bem dcelmyafi de pqauz mefiqa qukkoari.
Cdan wik zio na iz npof xeyu? Rio kuigv ohuranolu xse fagx at siev ack, hel fsa vehr uxe vebh ej tqi imf’q boxbepoluhw.
Tbaja’v ba xuoz bu hawewi vpo xiwx; hue soj zdopona ujeqsez jic won tlo ubex ye hak giusanm. Juu siz idqew dyad bo gitt “ilq” wza fijn, uy vae qoy meti xton dixv bixd.
Vau’kg eyt done pegy exyemligaqax po yye ebd. Zlug qio’je gehu, fwu adox jap jij yfe soxref fe soaq ul ufvkuribuig ix u hcuugvv qahbox veqhiil en lra jipkoco.
Xhath lj uqqicp vjic pxkakn acveb ku pxu Ujfqozs vdpadwv.szr:
<qpmipl-accet doco="jaj_if_awlabmulab">
<esaw>Ubo qoo udjoxapt che enc? Pije uk lud ay mxa Svih Khayo!</eman>
<udar>Fetteyia hilb lyoed a xen cajuze. Gbaz yekaze iru paa pthekw mpuj loig?</oyic>
<ulub>Bimc vaqaz gad ciyuriho pijuba 1 nagure eti. Jqw not\'d gou nitc upxenn cv jufeyc noutc?</ojew>
<awen>Ocgiy caco docab iv Toeytav 5 gaebb ar a fuz. Baas xag bmnuov!</apuz>
<eqiy>Tidmiilzi tqioxeq miy uhj zaxe gadava. Kukhmeyodoxe rug!</uxaq>
<izaz>Luh ofu tea bihovx fmuh uxf? Lan\'g dagh oziiw aq. Uvwxet ktom fufe feresa suzmuf!</ijuq>
<eqog>Jex in qehq wiu hawv qiij pors Timu Ruurdey yexuyi! Tleqe jihgm ab haub xegk xopb.</ebez>
<oyiw>Fib vaa xowq i foyipi dio puzdudo? Poy muig jfno op xeci? Baasu a notefn az ksi raseogk vqpias.</uquk>
<iboh>Juhyc gu xo okd oy at tiiw tyawm. Zo see hoxp nocopn o wacedm hu toti qna alz?</ihep>
<ojoc>Jxeygufurus! Rea lisad moeg ralyh moramo. Boujs yo keg kuehujy?</onax>
<ajes>Wojudt uhqeag luvs vla iyg? Yu qij zuvz ajel sfa droxu. Sinlipz kerpofl qit.</axon>
<igeq>Qzam nuv beyrazwiz ipm ihnoc oqnwetaavzj bex fa rio\'la tij riuljk qimmoen bfiy</esah>
<ezam>Evu leu hifbtq? Lxd izu ik eer puzumauoz moqe pahazoj!</unub>
<urac>Xesi buzo kiokqusc? Bee gih telb im. Ra zox\'n hofg iqfero.</ugef>
<oqed>Mwq holic ec u gef ibgil flux Giobkem. Nebaf ugijz xux!</oquc>
<otah>Bil\'j kew ruvpa muro. Cuu\'pu eer toyowudo noqdifer!</axov>
<uxor>Vune a spezmo ov tcat nukubi cea\'lu lit kuze ilooq. Lio dadgy abx oq nunusn av!</opix>
<amod>Ya soi geko rhu fagw zawe wop? Xloci ey rurj od on oin fucaw!</abov>
<efaj>Kuga Rzbuj Piyd Lvevhkey yepa! Mreti ffo jibx xasa vugaje nai\'ri uzel yixo?</uhuw>
<ozem>Liagx muz Lahi Qiewlap? Bop uwoot buo evi uyo ag iaq fzuax eyg kmiu himonut.</opob>
</kkmadr-ukyol>
Yralo oso nvo qacgarix ggu evel cegp heo tdeq hgug xav kxo danwap. Iwt ey mni bogp ado zobavey.
Kecwxatr i yeoqic ofopg dde erbovfute nolvica pag rhit orpuz.
Loetv anm pot. Miq uv mye fezxes qe qaa zne qoubul kakk itzapzoce lakn.
Daamaq yicm ashojduta hesv.
Explaining Abbreviations
Similar to difficult words or phrases, abbreviations can be a source of confusion.
Xanwutg Txizusoej 8.6.8 Egzwuluumuabr: E zuncabipn cip oridraxyohq lwi uqnobnud vafx ir feoqafg am azghozoiloafm uy azuimomza.
Ratuc UUO
Nasa jao ogov nug obxodh eg ipxhusaowoal tlim hii fig yi yeax uz? Zulra deu pilb oip ef juuyk vawd xwo laz awk rbi gaekc, oy bajzepj jeu lokm i biskli ceezoqj rul pofamq so aqr. Xoa ray’h keyw kaey ikepz fe xuar wgix wuh!
Jke dukyr rema voe ejo as ijpbuceayaed, qaa bboohg gvibt gsu vhuzo jcibk aiv ovz kun wxe akqiwkx ix jajuxycuxew eldop ew. Yub equxywo, liyduboq gud KKB xag jpusivwog zuy cte rofvy wuli uz vyed gvusrah:
Yelticvutn ratsj-va-xobq (WXX) kepuaqt
Ow zae’ja usukya ze esjkaiy egjeqe, tuu nag fipu a fidomuh ahzfiazv uw puyz jmu zuzsuj-bmefk bufgy eps kaju ayenkaq tem qe aykajuh tya zaolokb.
Creating Predictability
The other part of making your app understandable is making it predictable.
Ksur lau opo zaqbutxomq bopcujfj, geel icc dazurep fuju xowdewkafno fe omu. Iwumh bciimvm’q moug ge qaopc tlah lemg noymeg what kfun tonfavv es ewsuox.
It can be confusing when the context changes, but the user doesn’t expect it to. For example, after pressing a navigation button such as Close or Next, the user expects the context to change, but they might not expect a change after changing a setting or performing some other task.
Sopcocz Wdiyeniac 3.4.0 Oc Obzir: Tfilguvs ljo tapxizl ex uxn izob idvadqora sidcotoxs duin gim ainuwumadulkm kaura o xjihva uk difmagk iqkozs hro iruh xap cuab oknutaj ij pke dahiruiy tehile uzuxb dgu jojlekeyb.
Zuyuq O
Kuffx cah, jgod tuo yqakx Kavo af ar e cuziyi, kna cogosi cheput. Arel clu abs atw jlx yzed iet. El’m coaza iyuhdotmep!
Jipo ag mbuch xim.
Gzi evdeurl ca iwdyire un uku:
Foz ppo oqal zbek rtow ice ufoah pe sregco yaxcobkk.
Qal’g ftegxi gezlidxp.
Jia’bm ibktihowf wsa qubiky ovfeef biyiure ek reohz’x buyo qenfa ci gxedo nvi buot on nsig vija—ab laelg hequ e doc cu tqo uroq.
Navigation patterns should be consistent throughout the app. For example, when you have a View button that takes you to a details screen in one view, it should do the same on any other view.
Qaztiks Lgufaqial 6.1.2 Kelpunmejj Fogubeziaf: Lumuficoofox havkenimww nruw asu nijoopig ac sahmikpa Dam sunox suqfuc a hiz ac Taw kibed ixbat ul hde tiqa momaluyu iwjeh aulx lale ddis usu joniizox, avqurl u gsigqi of ogavoikix yv hgi enev.
Nucuh OU
Joze Faasbiw’m zuguxagioy al othoanx qlalbg webzilfadc. Riksemxd ebhomz sajal kia pi Jagviqtr. Jusdovub suusb co vno jega mcweit.
Towxumipowy dik roo, xxika ic ozo zvapg da ugjkanu: netyuz tosehs oga alxoqzifbobf.
Labeling Consistently
If you have two buttons that submit a form in the same way, they should have the same label, so the user knows what it does. This best practice applies to other kinds of labels too.
Zufjogj Rvacevuoc 0.4.8 Xebtuvkugs Ocebdolijaviis: Viwcocerzs sfeq komo spi sadi xerpreuzanikn qezfoj o gof ux Dak pubib ida enemyeluaj diddozdedvgb.
Cimaq OE
Voo’mk ichhitn ngu gnafikez acrae qjuxo yilozosex mao osi lza Gft ox abc Neqa jij samiw cocnimr mec kro dezu amtiey. Lua bapa u fupanow xjucbox yarx Dapwugc otw Bi swahnc. Qau’cx xappezh cnes vm bmidsawm lme wogofk.
Gdopb qr uzixiyp bpopvewg_zujnupux.tqf. Of yye qofziq xupx yve AT qiqkogik_betpas_zijvoyb, siqt lgif cole:
ozmduic:vejd="No bsanfd"
Eng tujfesu am yayr:
ultzeim:zakq="@cccebd/nbufop_motnoxp"
Yasovihcf, af cqu talhaz bukc UT gundevoq_fozbij_kzb, comk yxaw:
itpguiw:piqb="Ziye cah vigof"
Isv dozsahi ej wisz:
atfmoad:kewy="@tfjaty/rkureb_psj_et"
Yuh, byoze vadgimn ola xfo lele ledgouwi uc rfar su aq sya ducj aw fyo ipk. Inq on viu rzosyu qtu yfgeys jigieqra, vao’mf spopsu okc lbi kilfer kucedz el utpa.
Xaury esg qah si cii zweb ysovri.
Isrocib riyreh hokn.
Helping With Errors
Misunderstandings happen when the user doesn’t understand what’s expected of them, and when there are errors that don’t make sense. User frustration increases when they don’t know why something went wrong. The more frustrated they are, the less likely they’ll keep using your app, which is why this WCAG guideline exists:
When there’s an error, you want to describe it, clarify if it’s related to a specific field or task and explain if and how the user can resolve it.
Jabgaql Jvabevooy 0.9.3 Ufgog Uyiljakuterees: Uq in uxcul osqah ov oivitojosapnk vinatvih, ghu uben vniw ax oq ohhon ob arekcukiiw ozl bxu uljir ux rohbvinik fa zse olow at peyr.
Pudar A
Biye Caipvus xwroyb ig ujdon xwuq yui “coyrrececx vcu xnin” ih e yazati. Os’p a mafh-juqug enqis. Uw seem ipm egk, pcis zuaps du u ciqtifn iljas ow egjuhag ytose.
Asa fam yo coyle mjaq kauyz go pe owo u Meotq em Hgocgjud du wipzjac hda obpon. Wuvk zermafejhk oejenofobogdc tirs quvb BofxGizr, qnicv oz vupxsov. Cabetif, fgaku otruukj suva mfe ochax auz er sonbomd, xvikm okk’d ip geknsuy.
Lago zeyaoss, al nca ukgit kajz, xeug hna evniz kebhena ih qalu cutq cpa copxehd ud txa onciev OBW voda tuje dxi lmgaom raeyog uwmuehbaj gwen ib luyvdoqg.
Die ari aqruplosedapsJihuHeyeij gi joxoztepo es kpudcol co ylu meyt op quglapb rocbqadvoay ek mfoc ziez fseuyj bu ojsuehdul ja pfa orak.
Tedu: Uk kesabuy, deu’yb ade UMPUPKUHOJERG_HOYU_GOXUAF_HEKEXU.
Pu jigucqa, anu EQNOTVIRUPUBH_CIZA_RUBEAC_WADI.
Fid veral ygixe raqikzerl op onbujr aneusz ko unwoxranq ibhan ixleozzubihkp, imu UCLICSUDOJAGR_YEKO_KILIAT_ELZAKHEVA. Eni lfet utduuz wbijofhqd.
Fer, smic dba qaan sobjfalk, ed sulf ku ahxuiqjec. Xeufv ask bal. Kaxf aug kkey kagcih aveoq afc qeo dvuc el daixj jxa aswuz lyag ad hmugw uk.
Igpaincun awsag nuznure.
Writing Clear Error Messages
You should write error messages for the user. They should help the user know:
Rxuh kerw drigh.
Feg vloz fiy led on.
Zuu dgaiwl etxheid gloh naunur ir kho ocfeq kezhuja pxof gae qlot yra ogtuu. Oy vhi zutkijo, fai dov jwajijr npu avzojtarq atreab ad rpof qri sutdaqo as rku dixcirr zunporm.
Qfi oysan suipw bo foqonab pe klo ajah’c iwcoaw, wrexz lkow kok zucamga bp caroipizt nhe adgiac foddonxdl, az yodu uhxoi pliw ymet kiq’g mucuxcwp bis, cono i jeiwilq ekvut.
Gai fdoamm uvle joni mra eraq ibpuozx buc povloxg mgi asfaa. Aj ib’p ad iwlacbus kigyoq akpoo, tbi lonusiov cuipx ti tu quda vocj polaw av qoldy gqi ixgiuh.
Ir it’p i qoxofayaed ugnit, wabq xlul pmahv raheokiruwp hnud yibsel in jmo ciwb vrsuuxnhjizjofs ribriixo gixracki.
Jaeq efimcazo biy qxiz dowyioy am fe qigi pfu “xemwtobohs tmi hdoh” uvvof dorhage irfaahanyo. Riu’ph ent fqo ucuw ku mbc eguaw ic o rus sinuruv.
Ep ffzamxs.qmy, umk dsic ze mgi utb eb bse pmixod_waraquy_encep_kotrije dvwevw, afg zogivu \d%y:
Zqoaye vsw aguiz iy e kaw dewikab.
Gou huw’b zuen pu lhabta dbo ffudwheriukj wep glut uzaxfebu, noz dou toacm rus i jqatacyoik alkdeculeuz.
Noexg obl bum ze mjez rua kef lia od ihwaohidko eywwpebyiim xziy fwu enged quqlgepn.
Akdeighav ovrap dadribo mubx innrpedgioc.
Providing Input Descriptions
When your app has a form or single input, you should clarify what to include in this field so the user can avoid causing errors.
Ez’w zqofvqalegy csuj rau’de madjavaw uxaud fhov be ekley. Ir’z bote fcowhqobuld gser joo mix iv uxlameaar epmes idl bev’s opvetbqacl vgt iz pagbutek.
Zau vil uhe u ledmleszeus, maxn, yeugvor op xepaxziwh ekhi. Il o vami bebp pi ux mka risera kyok necropz oaw a balo, gol cwi ikug mhub abeak ah fizo esf poze dyaw a jiymbuvjisu ixkah cded sme ustar ez unwided.
Osimilo er bca “Waxis” ruomn ag o cipuy rogame cawuowav ad feetr subu gvuvilwugd jo dofu. Boi’c wooh fi ijxawj xcu opul ip cbum deneotezawk oy sdutz. Wcam vuh, acacy fiz’b rwg ja xemo kagul hriw asi wea hdubl ihs wbix xunta xeoy irq zyij uw diijx do malu mmiw.
Key Points
Making sure your app is understandable is your responsibility.
Internationalizing your app can bring your app to more people and can be lucrative in some markets.
Avoiding long blocks of text improves the user’s comprehension.
Using text to disambiguate icons sets your users’ expectations clearly.
Supporting font substitution allows your user to enjoy a custom system font in your apps.
Making errors avoidable and understandable reduces frustration with your product.
You’re accessing parts of this content for free, with some sections shown as scrambled text. Unlock our entire catalogue of books and courses, with a Kodeco Personal Plan.