Co znamená "obnovitelný"
Většina uživatelů iPhonů instinktivně ví, že tažením dolů na obrazovce obnovuje obsah v mnoha aplikacích — to je klasické gesto pull-to-refresh a přesně to máme na mysli pod "obnovitelný". Starší verze Splync tuto funkci nepodporovaly. Jediným způsobem, jak obnovit obrazovku, bylo zavřít aplikaci a znovu ji otevřít. To nebylo příliš obtížné, protože vás aplikace přihlásila od verze Splync 1.3, ale stále to nebylo ideální. Protože Splync usiluje o to, aby byl nejjednodušším sdíleným sledovačem rozpočtu, mělo by být obnovení obrazovky zcela bez námahy. Proto jsme ve verzi 1.10 zavedli pull-to-refresh, díky čemuž je Splync plně obnovitelný.
Dva způsoby, jak Splync obnovuje vaše data (úplné znovunačtení / aktualizace zobrazení)
Na domovské obrazovce — kde vidíte svou fotografii, seznam přátel a seznam projektů — pull-to-refresh provádí úplné znovunačtení. Znovu stáhne všechna data související s účtem, velmi podobně jako při odhlášení a opětovném přihlášení. Z tohoto důvodu může obnovení trvat přibližně sekundu, zatímco se zobrazí zpráva o načítání. Na obrazovce projektu, kde se objeví seznam vašich výdajů, stejný tah dolů spustí lehčí aktualizaci zobrazení. Osvěží se pouze data specifická pro projekt, například změny kategorií a aktualizace výdajů. Není třeba čekat celou sekundu jen proto, abyste zjistili, zda někdo přidal nový výdaj. Dále si všimněte: Splync automaticky nestahuje data projektu ze serveru na pozadí. Aplikace kontroluje aktualizace pouze tehdy, když provedete změny, když otevřete výdaj pro zobrazení jeho detailů, nebo když ručně obnovíte stránku projektu.
Proč ne synchronizace v reálném čase
Někteří uživatelé mohou očekávat, že se aktualizace projektů objeví okamžitě, když přítel přidá nový výdaj. Synchronizace v reálném čase může znít pohodlně, ale přináší důležité kompromisy. Neustálé aktualizace na pozadí vyžadují více baterie, více dat a složitější serverové připojení, které může zpomalit aplikaci pro všechny. Přístup Splync na vyžádání udržuje zkušenost lehkou a citlivou a brání tomu, aby se obrazovka náhle změnila, když hodnotíte svůj rozpočet. Existují také bezpečnostní úvahy. Udržování stálého připojení k serveru zvyšuje okno pro neoprávněný přístup a vyžaduje další autentizační logiku běžící na pozadí. Obnovováním pouze tehdy, když podniknete akci, minimalizuje Splync zbytečnou síťovou aktivitu a udržuje přístup k datům předvídatelnější a kontrolovanější.
Pod kódem .refreshable
Nejprve jsem si myslel, že tato aktualizace bude jednoduchá. Ve Swiftu, jazyce používaném pro vývoj iOS, můžete povolit pull-to-refresh jednoduše připojením modifikátoru .refreshable k ScrollView nebo List. Nicméně to nefungovalo, jak jsem očekával. Po prozkoumání problému jsem si uvědomil jeho hlavní příčinu. Chtěl jsem přidat pull-to-refresh na celý horní displej, který obsahuje seznam přátel a seznam projektů. Ale v původním návrhu byly obě tyto komponenty také posuvné. Výsledkem bylo, že .refreshable nevěděl, ke které posuvné oblasti patří, a gesto nebylo detekováno konzistentně. K vyřešení tohoto problému jsem restrukturalizoval seznam přátel a seznam projektů tak, aby již nebyly samy o sobě posuvné. To je bezpečné, protože horní úroveň zobrazení se posouvá sama, když obsah přesahuje výšku obrazovky. Jakmile jsem zjednodušil strukturu a zajistil, že existuje pouze jeden posuvný kontejner, .refreshable se konečně choval přesně, jak jsem chtěl. Také jsem přidal typické tlačítko pro obnovení, takže uživatelé mohou jednoduše klepnout pro obnovení.
Tahání nefunguje? Táhněte trochu dál
Ve většině iOS aplikací se pull-to-refresh neaktivuje okamžitě, jakmile začnete táhnout. SwiftUI má vestavěný práh gesta: systém čeká, dokud nestáhnete určitou vzdálenost, než se spustí obnovení. To zabraňuje náhodným aktualizacím, když jednoduše začnete rolovat z horní části obrazovky. Splync následuje toto standardní chování. Můžete si všimnout, že krátké tažení neobnoví obsah, ale o něco delší tažení — dostatečné na to, aby se zobrazil indikátor obnovení — spustí aktualizaci. Tento design udržuje interakce záměrné. Vyhýbá se nechtěným obnovením, zvláště na obrazovkách, kde uživatelé často rolují dlouhými seznamy výdajů nebo projektů. Jakmile mírně „přetáhnete“ horní hranici a objeví se indikátor, obnovení začne, jakmile uvolníte prst. Je to malý detail, ale přispívá k hladšímu a předvídatelnějšímu zážitku. Pro upřesnění: nejde o delší táhnutí nebo aplikaci většího tlaku. Důležité je táhnout delší vzdálenost.
Malá funkce, pečlivě vytvořená
Pull-to-refresh může vypadat jako drobná interakce, ale jeho vytvoření zahrnovalo designová rozhodnutí, technickou restrukturalizaci a překvapivý počet úvah v zákulisí. Splync v1.10 činí obnovení vašich dat přirozeným, záměrným a předvídatelným — přesně tak, jak by mělo být v nejjednodušší aplikaci pro sdílení rozpočtu. Doufám, že tato aktualizace vám poskytne plynulejší zážitek a nahlédnutí do péče, která se věnuje každému detailu. Děkujeme, že používáte Splync.