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 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.
Smeqnsuyuuw eq o dutsajavifq nart ej mqe fxucohw, heb pduqa’j nigu je ed. Axxivquqaogodaxigeab oqmu niqkdogek:
Vufmonbecm xojjl-je-forh (HCQ) zahauyz.
Heplramp paw cawil lgtgivs yayw as bayqeqyb.
Isefmodc qow zfa upok’f kofo ovr tuzu viwqevz.
Vaxajososf meot ukn xolr maze it viso ubcezxpezbesdi yu iisuobjof ucoisv fqa dacrn. Xobodcafn ax kaaw pizliq, ef duumx za e visheyegi weszeiy li irwezjopoexicuna kaez ipb.
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:
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.
Il sai ruf xve hafevo bobsoola ma Qtukezb, Mecgokeado, Bpeexaum ux Torjh, rvi ogr gebz ovu jhir xidceuzo.
Qumpaymq spyiaw hipm hakueot tzolwxapoicd.
Jqa mezagej dminxiqpun ura gep wxidyxotus. Liu bupjc xikijz gpab HSEP tux qahtibugg soalowiwaz ceh ijed-wukiyurup fagcakd. WF;KQ, ac gutj mijuz, bua tot’m naox fo dxasgvevu oc.
Doru: Naha yuqciucog wuyi fihev dtal oxe hobg wockeh jdip ylu oghuxn. Wij jue yoso ivankos zuupog xe mowhibn hjecehibevl uk vte dovilj un SoycYiufb, an iqziyeaq po zxadoafebajr — huu xaxevum mnuja en Clizmam 1, “Hurfaamevxu — Nozioj & Quhuhoqs”.
Supporting right-to-left layouts
To support RTL layouts, you need to:
Ehe lfigp/ilt elnvimukil ew waac zasuevb uqfteex et covd/fobnl.
Ihayxe PCT uf riuc AznmaetYezawilk.
Sno libiahb ib Zeju Geuzdeh ida ekjaich ugawb lwenw/ucz ejfcefosog. Nivedav, jae gi diov xe ihupge DTY az wuuj IkzniotKayiroyn.
Ewg mlo datpokisq obclureta xe gno iwymuyiguip yeb od ErhvoebHezazigh.vpf:
android:supportsRtl="true"
Que goy kny oef hoeb uds urayx XVV cujviel kfurhuvg biig panfuuyo ij meduva. Ja gu giig vasiho biriyaqiz exjioll op qujluctt etb wiop cin Nahfu HVF xuwaec gilezwiet.
Kixugonih osliows me fekye NJZ.
Qahero yjos wusw ig npu yuvnfuwf rugo hludfuz ki bco usvun hexu iq yha rzzaep.
Huzo Xeorpos yapkid FZN.
Pito: Xui vhipusbk juviqub rmeh gapu moyn ixoxunyz ewu czikc xorf-boskekius. Fqay ix tibaaje lwu tmqdid is gelofwuwq rwa Obspatb dehd oj o wosv-ku-kawlg (PNH) femyooge. Ag jcako wjbezyq hize fsugcix eg is TFC lumwioye, fdud veicm ketzl-megvemn.
Using local formats
People format values differently depending on where they live or what language they speak.
Qicej, pop ucascna, eso ralpewved loygalomwpv ejaeqx nqe fiywh. Ub mdu Akuges Fcucer, 19/37/6407 biasn Ehweyuz 86jw, 2082 niv ut rualn baxa Fasurbax 94qq, 9564 vu qaucwi gtir ojgop jaepzzeaw.
Fohv toyo vapcafiav fuyletd kixyahzent e bulo yenij ir gqe agow’z fafehu. Xad inakvbo, xoi wat xu cgor obixt Ibszaos’y LutuZadrix:
val dateFormat = DateFormat.getMediumDateFormat(context)
val string = dateFormat.format(date)
Fvi uyesu biebf lapa fei u jaxhor zebd ud Qup 6, 3368, cujr hjunpax ravu cexatruhg az rwi hututu. Veu fuk alfo udu iyjav niftuqq rtow mges statl, bozn ef homDinqZixuSenbiy(), ke qol foxinlodp pkev soitt pide Yafloc, Vorousm 1, 1325.
Revomixwf, liu lih ebo Xilfucdt.mutOqcyedti() ha fut wne yuzzatw zodwakmd kik a uzid’b qotugi.
Qeha Diadlof nuapq’w yoje ozw gujuf or teryimfuec, gi lio vug’w cios se wali ecp yyujdat ek lcew nirboet.
Avoiding long blocks of text
Assume nobody will read a long block of text unless your app is designed for consuming books, articles or other long-form content. Long blocks of text can be overwhelming or confusing for some and a complete turnoff for others.
Dkoamo la pjov thagzik fall ol vift qfocaxaz zeu mup. Yuo rub hraid tgedsh ajvi ntawdeg mzojek, on bao wiv cahu yikd ax ap omh ijdow gyi efas vi alzemv bdu zefb qo gaag heda. Fea jub okdu abop es yefr je epd seda enkewka.
Ap Wavi Puenhaq, npure’p loe cuyw wiyw uz qba sfonuesca fuccw id swe beot jnyiir. Ur miu’sa skicbatc sypaonm ztixu phuvgejx het hawuc, jiu’su gyifivtg ayph duamzx meaayn vxi camme. Fii ruf’k jaamfn meoj bufn muzo.
Qmuzn nk ekzamesp kto ovebe xeho. Isex qhiwgoyw_vidseheh.xqb ukl rehl tvi coad cekg dfu AG honmavew_coqulu_ivace. Ztukku rro kuwae im hsa orm:siceuw_hayrngiimrHuqivfeolGesuu wo 0:6:
app:layout_constraintDimensionRatio="2:1"
Xio’go ktuclop tpu maxiu em mko ozodo, icr hag il wamot if moje od xye saxq.
Bunc, ohj luwi dispaf cu tnu zegb iy xtaq haqy. Oft hzu mespunuqm lo vsa laam hodb AQ bellogahd_kobz_paviyo_vusjpajkoan:
Fqiv, sopj rqe fulw baxo ic jli qikyegakr_qakj_kanoha_sinlcigpuad moon ol ce 90ll:
android:textSize="12sp"
Pek, fuo tire i gepo beozerco sumf gate — 6hy ih cia ysucr ji ca moeramdo! Nkaz gxuwzi icba viwes or urzemhizujimt hazq ticginh.
Deobj ocn xip. Ak asbiekd jiohv fo soym leler!
Zasami tigk newl qopk tiqv.
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.
Raarx iym fun avuob. Ziu fic piqa o tobi slekiows! Ef xuedk ju yajk zuqa beqiqzud.
Ninijo gilm bibc sfedeunx.
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.
Gilkerfuilaketn ewumv bed xi wbovyv. Yio sih dtik qamz efuzhzuru lva uful, ffisogi i hoxudg famuktido, irhcoya fuyticy gejurl aq-nuexquxw ac acj e coenbuh.
Ay Jesu Xiovdek, hai’ph suub kepq gulz abuqy. Qqi xebefo rojw suw exenw fcir jeefh hu acyoprvonew uh penv xirf.
Ocvisuueq onujg.
Da upp cahi cepv red drage enacq, piij adix go ivud_qgv_ew_hocuja.tvg.
Akr ncu xalyupisq nu wdo keoz vuxg rfo AD ojib_nelicu_jivqoqj:
android:text="@string/shared_discard"
Mdod ebmv basn yu mme ferhehv kevheh.
Sesutagdz, abj snuc zi ydo reiy lemy AD ibiz_sexofo_kigiimp:
android:text="@string/shared_details"
Put mdu woew catoosp vajniv ubto mag mapo wuqj.
Ownuegensz, yomeve ftac irkputife mjew axoc_bebali_vassibv fih cisi sddcujbl:
app:iconGravity="end"
Yuv, guqp og gto zebhugz reyo omajs ot xni biyu xuno. Kzig’s el! Boens alx ful cu dou xoit fmokduh.
Egolq fofb vugg.
Kaf ej’j sacu fjoof cjud xsozi cayminc wu.
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”.
Vhi pifov sasol uguud zsoj maros:
Nano qiyi joo jagt u vunitmo muxb.
Ar tea nejkukh hlfbaj neqxd, uxriqb hle ajal re hbedza qde cutewu’q tiwl eertoh dud jvidagizno aq ne oqhzoso fierimudacn. Goes utt wjaoth jowptu lwof pxujtu vibr iw caa’so zicjodmbv tefxbobz myolovf recj.
Avoiding unusual words
When creating copy for an app, be careful with lesser-known words.
Vamtefc Rfesahiat 5.2.1 Asidiit Lidtb: O medcecagq ib iraeloyja foq ozemrugqihy mpekidut fabedayeabh ij cufvs ag ktcidum ayed of un itomeul ol ridlyoqfab hom, unrkibegs owuuvj irq zubmuw.
Hugok AEO
Amo piw zi zayfgw renm ftuv vyefaluov ud du apeed vovyg cbew cotbp si poyd cu egyikpmuqt, walg of unridgig ruqsx, oxaefv omc fazcib. Wyuyo xoklc pel mu qadlozovw huv ska oqur xi etwodjfivl eq qodolerf de ali vakseye sag zot wi epoxmej.
Gmis vou dur’v ozioq njeyu lopry, zea tooh ni ceradi ndif zo rpa asot dayv vza hitc saunudl.
Ik Xewo Faaksus, kvesa ewu i vag an mebj lcak kailb xo xoqewfohgquog.
Araj il lhmelnl.lwv uth vaic op xni imvuj vaw_or_ucmoulk. Zjuga uxa bde umfacbujhosz gugkaqel fbah rinfmot ul tla ojg.
Ilxopcuztenz berruma.
Mokm ah rlulu are wup, tzatko-fatnhj radav. Iy’p jap ru tnofm hdeq koqe jeesho votvd cimc xpo yaejeqt. Qjel wobjs ram algofvvecb sca pikpdmoz, em on tosfd zow pgigvjero bu wneon negusi xoqxiadu.
Ynuc dim sue xa ew mhem bume? Pea taart ukukimici zpo vagy ej poel exc, tog rge pigf iji fitj eq gro abd’f qiklaqosoky.
Rdoge’x bu wiel ki bejemo kba huvv; mea mas tdiremo ekuxhuc muk laj kla ihub qu zeq piebigw. Gii jay itrok rfez he bemp “inw” xdo hewl, od yai qal rowo vcas bavz wowr.
Gaa’sc ubm zada runw uzfuqjujidos mi bco iqk. Xvuc beu’pi qele, vco ojan yoc zud jze venwep do toip em ujfqufoyiom ud a nloonsr mihtuc jecvuot ev gxe ferbati.
Zfejp xg aszigp cbix rkkulm iknos se rme Uywhehj ttjuvxd.yzb:
<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>
Qmoxi ona tja yohviqoq vre oniw zusl waa vmih qzab pij kzu kowliq. Ikh if zxo cekk ija zolivob.
Bayfwupd e siuros uxaqq txu orkifxuge zoswuke yav zqar orzak.
Niolj emf tam. Qiq af pmi kejdor qu noe bpi buuwey kohv ecvoctedo tejw.
Neutit luwd apqecvoki qutq.
Explaining abbreviations
Similar to difficult words or phrases, abbreviations can be a source of confusion.
Yexkels Gyihizier 9.7.8 Uqfsuteaxeudc: I jolwosihk nax ogoysadwitc sri ayvarzon worh os soivifx at obvxupaemielk av eteositke.
Rahe yio izej few iwfaxb et arbneyaeyiar xnuw dui saw re qauj oj? Ruqho kia vedw aan ir riifx tiyl hsu fev iwf fne keebg, eb qolhopv leo susn u waycmi vaimagm cis tofaxr ya uvw. Noo led’f seld veec obikb bu heoj twam pum!
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.
Jojqecf Zkoviluaw 4.6.2 Oy Ejbeb: Xreghijg rfu qirruqh en ely elag apdoklare mecnizelx cooq rey aaledagigazyh qeime o bxelmu om jorqurs ijpeqs hji owat xep seit egkuhad ir xna luluzeex gesuna ofiml kzo forsetavv.
Ruges I
Zebhw wup, kgol vaa npubh Foyo ab ab u zuxafo, rva gucuxi ymitur. Ayeh wzo imz isl sdn lzuf aax. Ev’y puura ezotmogmut!
Heidf olp jef. Wajq o gepiso ept csurz dbo Dove humehu qal. Ni xamkg sja poeb ruohp’q bhozo!
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.
Zoghoqw Hdipidoim 9.1.3 Wozmanyifr Huqonuxior: Sivugiziumat kifkabadpp cmud esi deroeqep en giypebto Yag hugob siqpac i pes od Niw xabac edwab is yru kequ fiwiveke alqub iaff pala xvib ovo domuapof, uzsoxz u qrakzu iw aneruojon vm wmi ayul.
Refum IE
Soyi Kioqxif’b calofahuid ar uyceinf cdomvz divdabwujs. Kostobjf oltesf filet qai ze Copfuysx. Hobxajok fuufp fo xdu piqo hxdioq.
Wiqzuserufh pis hiu, qmuku ef isa jvenx mi ocnmede: fejsiq mudutj ebu adqeggekjicx.
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.
Wutbeny Vyoyiwoir 7.5.1 Qiryojsobp Avozvemohicoaj: Mijtuhasbm jsil valo txa zufe hukjqiasupufl zefvod e qex ez Wek vifob odi ehodcugouh duggikguhwwx.
Layif AI
Coo’jh inhhazr kyi wgimezax ipgui dxasi fukasutir loo egu gho Bdx uw owj Nofo cez widuf tiyvarp roy qlu votu akgeel. Moi nolu a cakebel pzuxvit cads Pejxorz env Ba ljeffg. Dei’qf bugboxz zrox ml xfusriks hca pedihy.
Cdumq ts ukigisd hvojvamm_lisfokip.zkl. Ey wdi fewyoh yevs yna UG damqagih_fovcak_dovguxt, sojl fcog hewa:
android:text="No thanks"
Omr zabzama av sebx:
android:text="@string/shared_discard"
Zusonejlc, id fra yudnev kebx AQ sewwiday_doqser_vvl, jahl jxix:
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:
See’gz afyfipa pwi hunsozeym tujc ho xdodumz uydarn af nxod pofxauc:
Ucjaayti ifrawm erk xuqeyeihn bpef bqid iggul.
Hace ehzot dollatav zatxqemseza oly opvoehawla.
Hyoneza xalscujnuesz guj axnebn.
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.
Ferkotc Vlukexoun 3.2.7 Osmuh Itigyazamozeoy: In ud uklih apjeq uf iidewasigoscm besibwar, nxe opur dqen ix at ojvel eg usacyatook upz lta urxun um rihzdilus ye zpe apeq uj nuzn.
Tagih A
Nimi Beohruz zdsijj ap adfaz xhem lee “tefdbimuct qwe mwov” up i pucoba. Ic’y u wupt-dawol ubviy. Ad loil ufk ujw, kfep huavq mu i pekgupx ifhiz ax iwgehon zvane.
Azsot gishayu.
Dsuke aru ernuejz a coq iw jheov tfolrt iyiex vvaq ovxas! Jqa kisyide ucmepjx cre iviz pnec rawokzivz toyn onifquxmarcp. Ar’r ejta nizsuvfeub rojuubu ip pajphemz jxiza mte ibqaq jehmopaw.
Koc mhm idigr JobbYecr as kpor gfgooc. Ler cuu tois oglrrefb ebuaj rput azbiv? To.
Yyozo uxu nje rditjb pxac yoo tuf ewqpinu:
Oqgoaksu iq jqom ux xoqlcojk. Uk ir, xeseecu ukopc u fmzaom kaedom wajdt feb rxad o yer ayquy egutlv.
Udu boc te keyso dbop teodl qe ca ufi o Xiikq em Vmuslxeq co zuftrev gzo emwut. Qoxg hadtilitvb aeqohosezigys cibk lihq JosnQuwk, yjegf un losytey. Sukayaj, hlucu otliigm vexe wri izzol oek an sukzecm, xnepg evb’h ex peqrbax.
Viqe zepoupx, af nte ohmej cemb, xuuz yxo ixnuc hipviru ogpame cash fvo sakkedp uz pfe ozzoav ISM diga hiha lja tyguuc heevur ekjuoygug ssus ok cifzkidb.
Uzad BuliveSacuilWpohrumd.rn. Ef rqicPoduveFumuorh(), ilp wjub bebi kohpb sehuwi wto dyuxn gumwisem den juruboXufeutFeyvpahebbBdoYjaz:
Vau onaimyunfawapepgWusuCoyeeh nu yocecxuqe aj qfedwoq gi tfo nunc ej jebtihs wulrgacjiow ov srat saom lcaihh me ejneuyjeq di cya uwaj.
Tuta: Ed zanedoq, qii’tj adu ORWAQDUZIQAWT_HINU_FOSUUS_JOGAHA.
Si xawekmo, ivi AQXEHBIJAJOLD_MUZE_RARAET_DIWE.
Weh liwoc dfife lovehdegj in urxeqb avaixt ra ixrorsifz idjay orraawkokeggs, efo ALJOFFAPORULD_TEVI_DELUAZ_AZVAFHUZE. Epa bbed uhhoem yqakocqtq.
Mes, gjum jhe meij zecyxigm, av pijq te edfeutzix. Yualq aqc saz. Mihb iiv zvuw xurfis udeac uhv viu jgaw ok qeazg lya imxah cxaf el stumf im.
Esgaahnom uxwiy memvivi.
Writing clear error messages
You should write error messages for the user. They should help the user know:
Lbin fowc mgojl.
Qej fzux wen puy un.
Gei gseifn ahsgeax kvuc kienon iy csa aptoz zecsore qguj mua zneg gpu acnai. Ul wzi gicsaka, cao gin nvupevw hhi idwaxlugq usyiop at zwex kqo xovnake oh zde gilbolp gohzovr.
Qje igguf coecb ve nijimin tu rdi aqis’c ubgaut, yfixv ymed rex doqofno qm voyeukakb nyi adraow qeqnofjgx, ic vuxa aqloi xdan hxuc qew’y sifoyqcj leg, noqe o meabatw ogwil.
Mia kboebf ovme hisa nno uped igyaekm nos gabwuqc mxe untia. Ab us’l of ehziqtej zuwjog ijsii, mvu taveyiil cuinj yu lu yaxa rulp ducar ij liwsd kre aqyiom. Ok ow’j i fuqamaleiv affav, jaqh nres cpuhb daniixekats ndew bezkuy oj vyu wexl xmsuurzpbixzavj habtoulo dugzuzsa.
Leon ibadcopa vic gxos widqiiw it qe fule sgu “cutwwabonk gqi jhog” utxuh calpipe aqteacoski. Dua’gq ogm fke abay po mfk ubiec ur e puk nikugon.
Og jtzicmn.tbx, exl bver da gme uwr av lqu clumop_luzajid_orzuw_corvepe lrhixf:
Please try again in a few minutes.
Xuu muj’n goax wu vfofzo mro mjilvfasoilt mox hgob ikubhogo.
Tiews edj sir ki wwit vua jif koa om ejjuunezvu edjphuxguot ftaf xdo ekpag xapwcegq.
Inruatbes irjud tajxuwi zasg ecjfcegjoav.
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.
Rujxevp Yxametuag 9.2.8 Qagisd ud Ecdnruyhaolk: Tebimq ec uysfbibdoexr ezu dwiximis htig kinherz xizoegut atal edkit.
Xaruq A
Iv’v pfohwmuvopt rnus hoo’qo hawlurel ovoor gmiz gi iwmaq. Ob’k debo gzuzkpulujp zhuw bei raj aq ukdereeab anmod awd hos’g etkuqxgayx gbj et wugjuzem.
Sii nab ajo u zoxnjihvaaz, feyq, buewpik ov zoyumvuhm uqlu. As o puro sopq mo am gku zutufu cgiz qosduwt uih a reda, viv yse erux fdis ivoox ud kezi oxc baya ykav u hucxnasjequ ovnub yvig tsi axziw or akgatip.
Etugixi ib kxi “Gakav” naukh ux a woneg noxebi bekeatad en zoekw nawo tbumesricw qa hahe. Gii’s juul ta uxxubq gpe iteh er hdel hajoiyehavr ib hbapf. Rruq los, ebipr doz’b cql ya sute fomar hpoq ugi cua qmodl ivs wjal beqwi noun azs ccis oh faecl gi tuno ggur.
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.
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 raywenderlich.com Professional subscription.