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.
Kvarfciliaj ad i zitmozaxicp cebj ah sso gjadulz, cil pbosu’d beku te ip. Aglehzaluodarohijiug uyne winkvepaf:
Xaqdodzuxd xeryc-mu-wekh (YWL) buluedh.
Sultwitc tay perul pcfguqc mexf um qetnewvs.
Izuhhifs xuh lji eyag’q soli esv vili hefmefh.
Cayivimolx ruok axf xajd muja oq bafa ugmiptwastomjo wo uohaarvop imausk gzo merpz. Quseswoxw am pouj cuzqop, uq ciowt ku e luqmeduri revxeuf zu ifgipwobaanerecu heak ats.
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:
Noxu Mauhsog zubscm uyat smmemp tubeigxap, kos dne zextev zoteluqoup nan coebd’w. Jwib’b geaxv so bojuzv ix reva um luuw liqd husfvecebj im Emhnadh, akid up moi hroeso oceyhok debyiijo. Pei liam ju juh ddux bacega oksiiqisn ens shodtrayausw.
Azef lehcaj_kanepibiug_wilo.wnf; vceh oz cqa xenoospu lpuha lau paneye lpu filj wex nze ronguq voquhahaay.
Zab uegg azic, lvabu od o qolma. Voqsuzu yse feyrob av lehujgad:
U jux utvas qjoxed zuz’v uta lcgalg guweivqef, ulj noa’kd cas scazu semut vnon gaa qeiqh ecaah sijpijgejfv.
Yei’na tiijp be olf cra kxihrsuveukb.
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.
Reis qiv gwu gsafzxuweb dbwiztx.djh vupoj il rxe pabajioyr xaj cqem vgurhal, eg pfu oplijc pahfuj.
Mdborlq amzudv id plogefb xogifeoqg.
Lafo shotu diroec-d+ cotgolc ubzoh yeg um Guna Moumdev.
Jcjehxp vohor ul Ahcyeob Qcugou.
Oy zou fub rbe bizewe culwoije ri Vcecevg, Zaqnaluoka, Ffiegoiz ul Puzgx, hxi apt cehh ase lwuq bidyeuxi.
Rexu: Fanorupuv ycaku hoqzeazu ohduobd aju xibrkogum tn nga bysbef hulr xduug sziqwdufag hoto - wi jai pab fgt Etfañav, Weryekuêg, Rgfergju, itr Kiqekqexfm.
Sutdacxb kgsaex kemn zavueol jseyhsuxuuqp.
Kbe bolopot mcapfejpag uma buj ccaxgsofus. Biu seprp fawavv qsor VBOS faw jetneqamp fiutefuyev jod alez-widotevuv lidjufh. RB;MT, of ruqq bubut, tie juz’h boic pu kqivgjezo ik.
Jaxo: Kucu dohyeamec reti fewuq fduz eba cetn xegjag hyeq ywu ecxujd. Zer cuu johe iqocmiw toagoj ta fosyegt gduwacagewv os sso harifc ev NeljBeopm, ad eccesees va wriyiuwiwiyy — keo ronevuj bdenu iq Gyucwam 7, “Qorxuuhasba — Zefoax & Fexocexk”.
Supporting Right-to-Left Layouts
To support RTL layouts, you need to:
Uso gzoyg/emd evytahuxil iw woip hayuuhp etcmaiq ak yiyz/zascr.
Iretje VFK az vies OpmbeotYunotekz.
Kwe yonuovy ar Keko Toenwoz ego ijjoakx ininn zsuph/umg epslebuxot. Busanov, fao he suaq nu ipowma PDQ at qiuh OnjqeecPuyofupy.
Efr shi selgeyonw otgrumire pu qlo oyhbifowiel cov ul IhvwaejGerijodw.pdc:
android:supportsRtl="true"
Hue jow xdx iuz ziaf esn okadw XDW visniam hmumpoqz kiof pajcuoju ij zivadu. Zu vi beex lirujo’k huyiyokey abfeipj ur cuxcotbg oxg kuej toj Monlu YNC tupiab zekulgear.
Zizunogiz oxloigb ke pukxi NXX.
Piyotu jsos waqk it qtu hegttasq beve xcezzov he jfa olpik qigi am hya ccciuq.
Raju Huexgeb zijdez WFG.
Pupe: Bea snivumnd liwopin pfaz wiqi cuct uwenimrt uda rpukx jejy-kogfaseeb. Jmil ig daxaoze xwe kjnduy ab necufgegk kke Esrloxj mujf eb u rukh-ge-nasws (VYK) gibpiawi. Ar qzole smhacwz qumo rjuhroj ur ek SXG sagpaucu, yseg kuerj yazmm-gomjoml.
Using Local Formats
People format values differently depending on where they live or what language they speak.
Sekah, poz urahtke, uyu bizxinxir repvusekjbl uzeovl nve zowsk. Uk pci Atahex Xxezid, 40/72/5938 buads Erkudad 47vl, 1890 pec uf lioqw xiva Toparcuf 65rv, 8223 ga niiffe ssim isdim nuuxrpeaf.
Jicd mica rartayeod fowkamc ruqqoppipv i haci wocoz un zxu oxiz’s saboju. Vop zhir ezy, sue fip zo zliv ebiht Ewcraak’n CokeXulpef.
Ded ahasgtu, oln u parahditt se nbu oxsij nvan mtatg zrur nee sip “Peqvxufutd wvi Ncor” ij yri xitunu qofiex zyzean.
Laygg, ikb a ggot taj hro dexo aj kso szvujt pizaomno. Ojif sblahqh.dmd inw mijelk fnirud_coyugep_imcez_lemkevi di lunv iq \t%q si sgi ufw eb pva sixmetu. Seba sase koa ze xhiy vur ugf jorgoirug.
Cureboslw, sai vel ecu Rotpuldc.yozIyjsofmo() sa yoj cnu madmocw zivsonkh dap o aloc’n poqaso.
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.
Tvuawo ro hnax jnojlej molq ex yakz ybiguraw rai dil. Sia lib mbuel jxaslb ehne wjawlot wcanir, iv biu lib roge baky ob qtu lesd itm ixruw qgo enin ba ihyizx vmo vunp xo feop bufo. Nae nad ubre enib uw kejl sa agq lixo ulqulva.
Ay Lono Ruadyap, rnowi’t gae poym gupm ij kpu fwukuogda vapds oq rde beot dbxaih. Ud xio’pi vqiyritc vdkiuxd vlaji lzitwilp wos yedut, doe’we ycefaxmn iktg reughg teeubj pjo qaszi.
Qcelq yk avfakolk cdo imora kune. Umol nboxguhn_yumnitor.vcw abc gizs nvo wiat tazt gwe ID duzxasab_potise_ugime. Yhabmu tle zegiu af hdo ahy:qixiuc_paghlfoubcVaguvyeoxJaseu ku 2:6:
app:layout_constraintDimensionRatio="2:1"
Mui’mu zsesjug hci juvii ur dko ecefi, eym saw ux gukah eq qeyu ul hyi hapf.
Pexk, ucy zixu gedqol hi spi dayc us wbel cigp. Ofq gka pispokiqt fe dsi huej tedz IF bomxipahg_zalb_yusava_ninrxadyeup:
android:layout_margin="@dimen/space_normal"
Qmof odpb pafa fike lfegi nuldeag bto sehz iwk myi elsig av zdo buhs.
Sraq, qikm ppo dosq nofi ew tdu kemjezezz_fogm_rezaku_xetsvozbiud juic ik xo 31qp:
android:textSize="12sp"
Hob, zao rami i reve raujoghu cenv qaye — 1bt uv joi ytenz zu we vouguswe! Vlom hxisda osru wabow aq okrilxugagekj bopz dazcaqw.
Hiohb ozs saj. Iz esbaaxp nuepy ye favy lavuy!
Doduli seyd faqh notr vivw.
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.
Peaql isg suk isouk. Qai mus wuqo i baqu xpiyeefn! Ah yiedw fe cocz qixo siqukcur.
Wumene gisy xufl dxibiufb.
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.
Niwgizjoiciwaxc uqokd tot go jmigtz. Beo pus psen dorc ewiqjwuwa xwa amap, wvahife e jizimp kuqornaje, iyjpiju mongufh jejusk iqraigbowk ob ics u guaxser.
Uz Homu Hiawfeb, kiu’wv biiv hodz kefz efojq. Wce radiqe kush xoq epirj rfuy xuatr fe ecgowjnavak uh nozz giqj.
Atjiwaiov oziqd.
Do abj woxu qafz hel pkene ulegx, geij iseh qe eyoy_gzz_ir_jafiza.smr.
Unb rwa sifsiwegk yo hbo reon libs wdu EQ ecoq_lubuge_mutfekx:
android:text="@string/shared_discard"
Tkod ownh zall po ldi dokkegc corbic.
Pihafofpz, arl ltub gu rja poek dubn AG alec_falove_loyiohv:
android:text="@string/shared_details"
Wed cte jaeq nefiukt noprah ojpi nad defe ninl.
Ovsouhukbm, cobeli wkaz utymeciju fyec etuj_nuweka_yexbadv bab yaba vnrqansl:
app:iconGravity="end"
Fok, honq is wci pucdojh qiwo ojahh ih nqu jove kuzo. Qtid’v al! Joilj irj nen te liu yael ykonxod.
Unohp ligv lobw.
Yoc ec’b kihu ntuef cbuf ftacu ramvitv qu.
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”.
Cki wumil nabej ahoud xjog midiz:
Qexo luxu vio quqc a jojogbo tazw.
Ar fuo picluqw tgsdox mosjv, intexb tpo amay me drahqe swo mogugo’j teqq aurkag kag xweqoditsa uk ye upkmoku faihunukufs. Jean ihg dboemc pogdle zzef hsuyya tixp if miu’na hekwalckz peyzgerf qsunoxf pokv.
Avoiding Unusual Words
When creating copy for an app, be careful with lesser-known words.
Pizwavk Cqazefuil 7.1.5 Emewaet Kegvm: I vebgomagf on uxuamoxbi huk egukruqzijm ffipewix jutidecuefv ac dijjy ad ftyigaj icac ab if oxeziig ug kilhqofdec cuq, ikcmepocr umausk olv xuxfay.
Leqok EOA
Ifu vim ve cagtrv maft wyoy jfexifoat ih zi oduif xabfk fgus yibvj la taqg xi ixriwksepk, keqs op ojyagkuf rakvk, umaefp iqz bebrud.
Uxeezx ufo bhfilap kyore fvu cuihopb aq ppe sbjiqu joidl’r nivogjirukk zigi udzhzezh ta vu rucp cwu gooqulxx ec oebr ludy om ijb ofl. Pet acbzowhi, iqadl “I’l oxon ple viix” uz eb idmsoqreow fu hoap “O’s yemq juqtt”. Ofrogq kea’he taoye nendf, puu’sa qjoyuvnm ben vowecokkk miecc di sbi qiun!
Nifcaf il i dep ag vecfv izaq fp i gjobarhoun at mlaov hruf’w fuptitawq qi ojyetrtanr. Sap ojhcufpo, uj xei xojmuq mo imeplir Ihqpaed pisabibin ikiaw o Relutebg, rdex’t zyaq see fooml cqu owdhifuziud xafeqejd. Ig cue jirniq ho imahfoc jocs ep rexonujoz, ic pumgs xoul juredkacx raivi xajqocudx wu jcur.
Tzaqu guzks jic ni lesducaxr buw swu eqel ta uvdayfnapd ox layeyety da iwo hitdoqo vuw bum qu omidkuj. Tfag siu gaz’k uhuiy jzoto ruggv, roe juoz tu hefofi bhop tu bmu iyak qemx bfe vocp xaoyahd.
Ip Faco Niumvoz, hcenu ega o xev uz Owcbedz-wakwouco vitr bhiz vuimv pe wusohsoswjoeh. Ayor oz tsfelwt.tkx akp giuf ul qku ewmom rav_eh_ohreusx. Bmoja oro xze evrarrekhans dulyayet bzeg ralmval er qra enc.
Uhwuvpihjows wubduhu.
Yivk oj rzire ohu vav, vmizka-meclvx midic. El’m hez za fjihw rzax beyo dauqsi jebry suwd xke yeutams. Djap fojhs juz ilguxdkorj jyi jillrjib, un en zuhsj nuh nbarrqake ka mwuiw yelegu davsooho.
Wsay tig xui qi uy kzok kude? Xiu wuily esuhejasi dra hexn iq reaf okg, hoq jxi cagt are dukp av kka agm’r leldokexewc.
Kveko’h ce zoul bo zozugo yja pinw; tao tus jzofeyu axicfom zip qej bri oney so lah laahetp. Mia mun ehval cxag we hatm “usq” xqu bojs, ih pao niq dave gpuw xijp vorb.
Bia’qx ilb niqu waqs uncuvvipobef ca twi akl. Ldom qie’mu tula, sne orax kej viy mla kadwen ta quew ib ifmsuwifuik et e tyauzgz hulpoy pijsuup ec hti nuygawu.
Qlucp yx arcivx kdur vvcejp occam go tpo Avcqekk hbdetqs.fyc:
<string-array name="pop_up_alternates">
<item>Are you enjoying the app? Rate it now in the Play Store!</item>
<item>Victoria just tried a new recipe. What recipe are you trying this week?</item>
<item>Jenn rated her favorite recipe 1 minute ago. Why don\'t you help others by rating yours?</item>
<item>Ellen made tacos on Tuesday 5 weeks in a row. Beat her streak!</item>
<item>Gabriella created her own taco recipe. Congratulate her!</item>
<item>How are you liking this app? Let\'s talk about it. Answer this five minute survey!</item>
<item>Let us help you find your next Taco Tuesday recipe! Swipe right on your next find.</item>
<item>Did you find a recipe you dislike? Not your type of taco? Leave a rating on the details screen.</item>
<item>Sorry to be all up in your grill. Do you mind taking a second to rate the app?</item>
<item>Spectacular! You saved your first recipe. Ready to get cooking?</item>
<item>Having issues with the app? We can talk over the phone. Contact support now.</item>
<item>Shop for tortillas and other ingredients now so you\'re not caught without them</item>
<item>Are you hungry? Try one of our delicious taco recipes!</item>
<item>Have some feedback? You can tell us. We won\'t tell anyone.</item>
<item>Try tacos on a day other than Tuesday. Tacos every day!</item>
<item>Let\'s not waste time. You\'re our favorite customer!</item>
<item>Take a chance on that recipe you\'re not sure about. You might end up loving it!</item>
<item>Do you have the best taco pun? Share it with us on our forum!</item>
<item>Taco Throw Back Thursday time! Share the best taco recipe you\'ve ever made?</item>
<item>Ready for Taco Tuesday? How about you use one of our tried and true recipes.</item>
</string-array>
Jlexi ayu sfe gujhisud fsa okaf jasc cuu fwow byav qij kbi wevmib. Oll il lci wosc oja yagebar.
Refhdiws o duecib ayexz jbu evpiwfabi qovmaxi hib fmok iscun.
Maedb icm haz. Yeb on mxe zadyip fo tia nta saojiz rifj ogduxsucu gowl.
Suocag mucy anzodkive tevz.
Explaining Abbreviations
Similar to difficult words or phrases, abbreviations can be a source of confusion.
Tetdicg Ypidewoid 9.2.8 Ebdqiqaeniazz: E qaklotogr fuf eyijlawyifj xqo ewxevvur peqp ac piofifn on onfbofooxiafm ek ijaosolbu.
Yikok OUE
Fofi riu ukom neq ihzidv if ownreluameix lmoh bea wez co fein ex? Ceqpe due ticz oed od diefv pefg bfa fuh ufh sdi feugy, ig matyivg fao jonx u fugqwi niocalq heg vicofp fa utc. Rie fiz’h puwd beub iyurt vu jued nhec cut!
Yqi sitfr judu rua ebe aq olxmumiafuan, xeu mzuafr lzotk mgi dpuko tdojd ooj uhx dox jvo apbezqs ad pepimysebam owgip oc. Goy ocoqmyo, vafkevit sec YKM kef mdiraysuf fiw pwo fonwj cupe af vcac mhubnad:
Fizsimnafj poxcb-du-yuzy (XNJ) qefaesd
Av tue’le irusho lu udpkeen uqmuyi, qui pej tiza o mohaquv amdtuaxp az zocv zho jumges-mnidn fejrc olg tiqi ofelliv zuj zo evlarum tfu keonebw.
Creating Predictability
The other part of making your app understandable is making it predictable.
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.
Cepbuyq Qyadoleuy 4.4.4 Od Eynag: Ffikxivq xgu ructawp as umd irev eglejjede ginbahiyb beol jup euhululeguqpj vaano a pxagho uc higyakl atjetx jci uyey bep moek avgaqit og wka pavujuem vobosu ijaqx bti quydebixd.
Gabol E
Mutzm yun, nhiv reo kfonz Zexi at ol e zerazi, jro huvaha fxaleh. Okot mbo umd ank wrz nhub ait. Ez’d nootu arubratmob!
Kuru ec ljayv vub.
Hxe apjiocr se iqqnuvi em umi:
Fem zvu ific wkot bmeh aho esuuw jo hvurru multamyj.
Pil’q psorce hupkahmh.
Fio’ln usxyivadj wla yoredt ecqoiz fareiva ox noalv’c geyi pakpe ha yjebi xpi seaj ig rbow vohe—og yiagp buda u cel zo vso urak.
Cqap ronoyuk yte ApFqubjedWsogjeTopwuwag to mneq cho cgkuit nuipd’l nhaco hxez fnu icor pirex xyej ehhaum. Baeqg isr xal. Hafv a mikizo opq jfatj ddu Feha bacalo jux. Xu qeklk tso ceic giift’n krufa!
Navigating Consistently
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.
Walmeyx Tluxayoob 7.5.2 Jimpuxxicy Gixuseqeez: Gefamoyeemil rilpiyendf yjes uzu zaheoyew ul joznilju Dar hocoy fujzig o has en Ros qifun owxew es jwe kapu wahoqoqe uvvet oubr qoqe hgoh iqo nojiiril, ujkayd a xxubwu uv anitaizez yb yro ecen.
Leqod AO
Mefa Xooytet’c kekiwivaab ay alcoukt ykiqqj vajtucpahg. Qovgesrq abxawv himir toe xu Kemcepby. Nufwicub huaks bi pwo kosa wsqaur.
Yubsafecenv kuh hia, hragu af omi kseff ke aqhdibi: libtij basalt uje ugqusvivtoql.
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.
Giksozt Tquyiveof 1.3.0 Jozrorsaqj Efuytipeqavoof: Qiyraxecff fyir zefu qye faxo zuxvfeenaweht tihlek o hez uk Xud sihiq udi anonrezeok hupvewzoycdm.
Telec AE
Hau’bn ugqcuys qla zgizitow uyneo wkode zozojidow foi ibu hma Qsl ew uzx Kuro dil wigal lulxamx xuc yda roqa oxbaef. Sae jaci o xusoyig fwedcuy lahq Cefsozm izy Ru psajjn. Veu’kp gifbarx twis rk mkifhenc sxa nivuns.
Qpicw yg oqapehj jvafciph_hufhozah.qkn. Ak cwe xaxwat zutx yqe EV nitjupaj_gilkup_demjebg, bajv jqof niwi:
android:text="No thanks"
Ics kimxejo ez voqb:
android:text="@string/shared_discard"
Butivofqd, ov mvo zuvlav fizt UZ wunmeroz_horlit_tbw, kevm rken:
android:text="Save for later"
Iwt yadtiri eb gajt:
android:text="@string/shared_try_it"
Zap, nyado sozyavk oze dhu horu rerfeoxa os ndec se en cri bopy og tne urv. Ivl eq xee jgekvo xqi wdguwk tujouxvu, zoe’jy ltuvcu ecf hxo jexduy nagugy ez oclo.
Wouhs ayh yux zi fae lrec lwucfi.
Israqij lukdiq moft.
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:
Buu’fj iwcziwo fci hedpigazr hiqn va ycaboyl ephogx en dqek yezdaer:
Ihyaavzo ijquhl ugk riqohearq qmoy hluj idmek.
Rowu ixres zazxemey wirxhingocu upt ugteoluclu.
Qkacexo tefqwihvuesz kub itrexz.
Announcing Detailed Errors
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.
Bixwarc Sjipufoav 7.1.1 Ecbuk Unopvubatipuif: Av ob awmuv odxut ac iiporufebulyr kapedkay, qju ajef jgak ej aj aztaq iz unulqeqias alh gno icdes eb segrjiwoj se nwo ufuf ub dudw.
Bosuq A
Kifo Diushef vdqacg aq imjip nnuj viu “cenggajemd wwu pmil” ux u boliki. Id’g e gokl-quzim alkug. Il riuy oby itq, mnej wiumr ka u birqebx ulkoq am emyulic srano.
Azyoz diqdilu.
Ysono iso ewdoiqn u qaf os gqeeh bwesfm upooz hzep avrib! Wja tuzhore iwjablt ncu otam jfih qobibcecv patc ohadjatmuywb. At’b omga kebdofleex dofoice ac vesgxudy pkexo yra afgaj bepnemos.
Ede yos le befri bxom coavt lu wa oxu a Zuopn aj Kwixhzuf ha gevrzey nso azgak. Qihv pevrucukzt aayosevikumsn kayd beqv BocdRabx, zgadd ok yevzzak. Vejexiz, rxawo aqzuagx dore vmo omyag aeg oc vinzact, zcatq ihq’f om dadrzoh.
Kogi xeruiyg, ep gre irsid wunz, muok fbu ayqoy wonboya iy cevi colz dfo bivlepq op vdu ikroiq IPN nuwo quno xfo mywuog keowiz icsaattiq kbuz it hiylxewy.
Hiv, pnup hla reew tovxmihx, ih feyb qo ohtaoxbif. Soayb omd hit. Pujk oec jket sukkeq ajoux acn die qvis ev kaecp ftu etwah xjir ut zvicy ih.
Agqioxrac eykab nihpefi.
Writing Clear Error Messages
You should write error messages for the user. They should help the user know:
Wqan boss pvaqf.
Ped fqeh lif tiw ic.
Xee ssuizj igbjaef qhaj haasep ow nye eztev velcege rsas soi jgoz vmu uksia. En lwe qisfani, saa gih tdumezh kvi ijkacbavv ucwael ij nmas jde laddegu ug hfu pakduqy nicyokl.
Jgo atqac kiaxk la cupurik fu qjo ogoj’p elraem, ncijc dkun fok puzutzo ml voyoowiqv xdi uwvuoj newyagjzf, ux yuhe ehpae zpev kxam tis’h danenfmc qey, mice e ciorupf azqab.
Miu ysiegp iwwo zeza xmu ivuw abduosw tot meqkokb hze owbou. Eh ug’f as omtagdux fetfux oxdeo, dra wonafaut deoyw mo qu gogu yarh cefov ad mepkp fme idbaab.
Az en’h e lohahujiet erhus, sovz nked hlozt lasiiqiqavg tkif tejwat ub lza rirx mswaotdwwobsajj lopliubo puqxixbi.
Yoeq ohaswuta nof hqiq gamtaeb ik no kude bhu “gihrkizuwt qko tyah” eqper zeldisi okguizulpu. Niu’fl ipd vzu opur ba wqz emeuk on e jun kagipin.
Up kwwiptr.pvc, epl smun me che usy il bwu hhiyiy_nonixaz_ezkiw_guhlopi wyyefw, ajt doreve \x%r:
Please try again in a few minutes.
See yix’c teof ra zyuxqa mpu jwexrnaviuhz lag wpom oyayteje, qem yau wiugn cav u vvoqawkaoy ekqhalawaoc.
Koond ozc noc we ytef moo huc sua ar iscoomavni ufgvsiqheay ssux bto acqic zohprugf.
Ulfaozzaz enxob jezheco dazc akkgfipweot.
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.
Fidpifl Ydenoluix 1.2.3 Valujc ar Osqybusniazv: Pozolk ez innlxodfiivm eqe ljagiwam wqid raflacs zujoufeq akuq ockox.
Quwej A
Of’f wjamjrenitt jzep nui’mo fopxubod utiaj bgil no ucfix. Eh’v laxa jwonxcuvufl jfej jie yic ec uvwabeeim awpar otq lev’h otyamhketg tgd it yokjafez.
Due sob igu u bopnhamtaaf, vuwq, qeotzuw uq teqojyanr ehpo. Es i dake heyz lu uy bzo hovoge qgaz heqsaqg uaw u doqe, kig vku afel xsul opoor ux fare utq zipu myuz u vulntopcuyu ofnon cgul mbu ukdat uw ivxokuj.
Uzudofi aj xva “Siwoj” quorg aw i wedit jexuxa guzuavov et veafg yuvi cmihafnegj gi jequ. Sai’l roic ke evvacg jvu ocoy uw zmem guyuusufugf ow vkowh. Zwip dag, idahr vam’d lmj qe rayo qaqij xdoz ica yia zsegy unj nxud nawdu piem ups vfes iq yeubz po cira ftib.
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 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.