augusti 4, 2017 – iOS App utveckling, mobil strategi
av Mike Woods, Atimi Software Inc.
dynamisk typ är inte ny. Det har funnits sedan iOS 7, men dess antagande av applikationer har varit något fläckigt – tills nu. Med iOS 11 gör Apple betydande förbättringar av funktionen som borde leda till bred skala. Den här artikeln går igenom dessa förändringar och överväger hur de kommer att påverka bra appdesign och implementering.
Vad är dynamisk typ?
iOS har alltid inkluderat bra stöd för text. Operativsystemet har dussintals högkvalitativa, skalbara teckensnitt och en sofistikerad textåtergivningsmotor. Designers och utvecklare har kunnat utnyttja denna rika uppsättning funktioner för att producera attraktiva och funktionella Ui.
men med en liten skärm är UI-design alltid en kompromiss mellan passande innehåll i vyn och läsbarheten. Och eftersom storleken på läsbar text varierar från person till person, kan det som fungerar för en vara oanvändbart för en annan. Text-tunga applikationer (som nyhetsläsare) kan erbjuda en textstorleksinställning, men eftersom sådana funktioner måste kodas manuellt, garanterar de flesta applikationer bara inte ansträngningen.
för att lösa detta problem introducerade Apple dynamisk typ i iOS 7. Det gör det möjligt för designers att använda en uppsättning av sju (senare ökade till tio) textstilar när du väljer teckensnitt. Dessa stilar mappas sedan till olika teckensnitt och storlekar beroende på användarens textstorleksinställning. Med dynamisk typ, kan alla program vara lyhörd för användarens storlek preferens, vilket förbättrar upplevelsen för ett bredare spektrum av användare.
dynamisk typ stöder sju storleksinställningar, vilket möjliggör en betydande variation i teckenstorlek. Till exempel är Brödtextstil 17pt vid standardinställningen men sträcker sig från 14pt till 23pt. Detta är dock inte gränsen eftersom iOS innehåller en tillgänglighetsinställning som lägger till fem större storlekar, hela vägen upp till 53pt för brödtext. (Observera att för närvarande ändras endast brödtextstorlek i tillgänglighetsstorlekarna – detta kommer att ändras i iOS 11.)
denna flexibilitet kommer med sina egna utmaningar. Det dynamiska omfånget för brödtext är ungefär 4:1, gör även korta meningar spänner över flera rader. Statiska layouter fungerar helt klart inte med dynamisk Text. Lyckligtvis kommer Auto Layout att hantera det mesta av den tunga lyftningen, vilket gör att användargränssnittet kan justera layouten utan att behöva kod.
ändå kan inte alla layoutproblem lösas med automatisk Layout ensam. Det kan också vara svårt att eftermontera dynamisk typ i en befintlig applikation (särskilt om den innehåller manuell layoutkod). Slutligen innebär att man antar dynamisk Typ att man överger de andra OS-medföljande teckensnitten, för att inte tala om anpassade teckensnitt; inte ett enkelt val för designers som söker ett distinkt utseende.
dessa utmaningar har lett till att många appar är långsamma för att anta dynamisk typ, eller att göra det på ett naivt sätt, vilket resulterar i trasiga UIs, särskilt för de större inställningarna.
men allt detta borde vara på väg att förändras …
vad kommer i iOS 11?
vid årets WWDC meddelade Apple flera förbättringar av Dynamic Type för iOS 11 som kommer att ha stor inverkan på hastigheten och kostnaden för antagandet.
det kanske viktigaste är möjligheten att använda andra teckensnitt med dynamisk typ. Detta gör det möjligt för designers att effektivt omdefiniera textstilpaletten (inklusive typsnitt och punktstorlek) och systemet kommer automatiskt att skala dem enligt användarens textstorlek.
för att förstå effekterna av detta, överväga bara en pedagogisk applikation som vill använda svarta tavlan SE (en av de vanliga iOS-teckensnitten) som huvudtypsnitt. Tidigare skulle det utesluta dynamisk typ. I iOS 11 är det inte bara möjligt, men designern kan bestämma att texten ska vara något större (18pt, säg för brödtext) för att se tydligare ut med handskriftstypen – och teckensnitten kommer fortfarande att skala på lämpligt sätt vid andra textstorlekar.
det blir också lättare att uppdatera befintliga UIs för dynamisk Text. Automatisk Layout får möjlighet att justera vertikalt avstånd enligt textstorlek så att texten inte blir trång i större storlekar. Och för manuell layoutkod är det möjligt att skala pixelavstånd enligt textstorlek för liknande effekt.
bilder kan också skala så att ikoner blir mer synliga i stora tillgänglighetstextstorlekar. UIKit kan till och med hålla ikoner i vektorform för att undvika pixeleringsproblem.
utöver detta finns det förbättrad layoutinställning eftersom textstorleken görs tillgänglig som en del av UITraitCollection, vilket är det vanliga sättet att spåra andra faktorer som påverkar layouten.
en sista ändring är att nu alla textstilar ändrar punktstorlek med tillgänglighet. Detta kommer att avsevärt förbättra läsupplevelsen för synskadade användare som all text, inte bara brödtext, kommer att skala. Det påverkar också designtänkande eftersom det betyder mycket mer variation i innehållsstorlek.
Vad Säger Apple?
kanske viktigare än de tekniska förbättringarna av dynamisk typ är Apple-pushen för att främja tillgänglighet i iOS 11. Detta inkluderar att tillämpa” design for everyone ” – principer på de applikationer och verktyg som levereras med operativsystemet. Bland dessa principer finns tre mål för användningen av text.
1. Texten ska vara tillräckligt stor för att användaren ska kunna läsa. (Med andra ord ska texten skala med dynamisk typ.)
2. Texten ska vara fullt läsbar. Det ska inte trunkeras i onödan och det ska inte överlappas eller klippas.
3. En app UI ska se vacker på alla textstorlekar.
för att uppnå dessa mål krävs att UIs är mer anpassningsbara än att bara låta text växa. Till exempel är tabellcellsinnehåll ofta organiserat horisontellt med en bild eller ikon på den främre sidan och textetiketten efterföljande. Det här ser bra ut för vanliga textstorlekar, men de större tillgänglighetsteckensnitten leder till att etiketten ser trång ut (även om långa ord bryts över flera rader) medan ikonen sitter i en stor vertikal blanksteg. Om du växlar till en vertikal layout med ikonen ovanför texten maximeras det horisontella utrymmet för texten samtidigt som mer innehåll visas på skärmen.
i andra situationer kan plats för större teckensnitt innebära omarrangering av vertikalt innehåll för att säkerställa att åtgärdsknappar inte skjuts ner av flerradig text, omorganisera verktygsknappar i flera rader eller dölja tillhörande innehåll för att göra plats för viktig text.
ingen av dessa adaptiva mönster kommer gratis men Apple gör poängen att de är värda att leverera en fantastisk upplevelse för alla. Och genom att leverera en sådan upplevelse inom systemapplikationerna höjer Apple ribban för appar från tredje part. Med iOS 11 kommer användarna att vara mer villiga att aktivera tillgänglighetsfunktioner för att förbättra användarvänligheten, och appar som inte stöder dynamisk typ väl kommer i slutändan att förlora dem som gör det.
kontakta oss för att ta reda på hur Atimi Software kan hjälpa dig att bygga en anpassad, innovativ företagsapp som erbjuder en överlägsen användarupplevelse och står tidstestet.