Mobilne Aplikacje z React
5 godz. 51 min · React Native · Full-stack i Programowanie
Piotr SzacińskiZarówno iOS jak i Android posiadają swoje natywne SDK, do obsługi którego musimy poznać nowe języki - Swift czy Kotlin, o Objective-C czy Javie nie wspominając. Z kolei React Native jest do tego świetną alternatywą, która pozwala tworzyć jeden kod na obie platformy. Dodatkowo - bazuje na najpopularniejszym frameworku webowym, co znacząco zmniejsza próg wejścia.
Tak samo jak "czysty" React, React Native opiera się na komponentach. Poznasz ich specyfikę i nauczysz się poprawnie budować UI aplikacji. Zrozumiesz też jak najwydajniej zarządzać skomplikowanym layoutem, takim jak długie listy, i jak to wszystko łatwo stylować.
Animacje to nie tylko efekty przyjemne dla oka - to przede wszystkim dobry UX, który pozwala użytkownikowi odnaleźć się w aplikacji i zrozumieć jej mechanikę. Podczas kursu poznasz wszystkie podstawowe metody i koncepcje tworzenia animacji oraz poznasz sposoby optymalizacji ich działania. Dodatkowo omówimy prawidłowe podejście do dużo bardziej skomplikowanych interaktywnych animacji, przedstawimy ciekawe biblioteki oraz best-practices.
Praktycznie każda aplikacja, niezależnie od tego, czy web, czy mobile, składa się z wielu widoków i ekranów. Zarządzanie ścieżkami, jakimi użytkownik może się poruszać, to jedna z najważniejszych rzeczy - a w tym kursie dowiesz się jakich narzędzi należy używać i jak łatwo obsługiwać zagnieżdżone ekrany.
Niewątpliwym atutem aplikacji jest to, że może praktycznie bez ograniczeń przechowywać content w urządzeniu telefonu, a przez to - dostarczać treści niezależnie od dostępności internetu. Omówimy różne koncepcje zapisywania danych oraz poznamy metody i narzędzia do ich wdrażania.
Przybliżymy ci proces wypuszczania aplikacji "w świat" oraz przedstawimy narzędzia, z których sam autor korzysta do ułatwienia tego procesu.
Kurs jest dla każdego kto zna podstawy JavaScript oraz React i chciałby się rozwijać i tworzyć mega ciekawe projekty, które mogą używać aparatu czy sensorów smartfona.
0.62.2+
Więc zrobiliśmy tą podstawową animację jest
z nią tylko jeden problem po pierwsze zauważcie że wyskakuje nam tu taki komunikat
że animated use native driver was not specified this is a required
option to wynika z tego trochę
z tego w jaki sposób react native tworzy animacje mamy tutaj dwie
możliwości pierwsza możliwość jest taka że ta animacja jest obsługiwana po naszej
stronie js-owej przez nasz wątek js-owy tak jak się dzieje to tutaj a
druga możliwość jest taka dzieje się to po stronie natywnej i teraz oczywiście
ze względów wydajnościowych zawsze lepiej żeby ta animacja działa się po stronie natywnej i teraz
jeśli chcemy żeby ta animacja została wywoływana po stronie natywnej
czyli została tak naprawdę stworzona w naszym kodzie a następnie wysłana na wersję na
stronę natywna i tam została wykonana to musimy dodać właśnie taki parametr
który nam tutaj został zasugerowany przez warning jak use native driver
czyli spróbujmy sobie to dodać use native driver
na true okej
natomiast wyskakuje nam wtedy błąd dlatego że use native driver
fajnie jest taka opcja natomiast nie działa z wszystkimi parametrami
zresztą to jest trochę tak jak w animacjach webowych wszystkie animacje
powodują rekalkulację naszego drzewa one są oczywiście możliwe
natomiast nie są zbyt optymalne i tak samo jest tutaj animujemy wifth i
height które wpływa na wszystkie inne nasze komponenty i na nowo
musimy to drzewo i to po prostu nie wspierane natywnie i w
związku z tym musimy użyć czegoś innego i tutaj na
pomoc przychodzi nam oczywiście CSS-owy transform zamiast
robić to w ten sposób to zrobimy sobie nasz
tansform i w nim będziemy animować
scale zróbmy na razie tak żeby to nam scale
y okej super no i oczywiście naszą
animację już nie ma wartości 100 tylko 1 niech
się animuje do 1.2 a następnie niech wraca do 1.0 okej
w tej chwili oczywiście nic się nie wydarzy bo tutaj
jest na sztywno wbite na 0 natomiast jeśli sobie tutaj przerzucimy naszą
animację photo anim okej
jasne to
błąd zapomnieliśmy dodać current okej
okej zbudujmy to sobie jeszcze raz przebudujmy naszą apkę
no
tutaj coś się nam na androidzie wykrzyczyło niech się odpala no i wygląda
to już znacznie lepiej i co ciekawe już nie krzyczy nam warning dlatego że korzystamy
native drivera tak samo to wygląda na iOS-ie generalnie jeśli chcemy uzyskać jak
większą płynność to zawsze powinniśmy używać native drivera i generalnie
nasze moje zalecenie jest takie żeby zawsze wszędzie gdzie się da native driver
był jeśli wydaje nam się że no faktycznie nie da się tej animacji nie
da się tego użyć przy pomocy nie da się animować naszego obiektu przy pomocy przy pomocy transform
albo opacity czy elementów które podlegają temu native driverowi
no to próbujmy to jakoś obejść ale generalnie zawsze
zaczynajmy od tego żeby ten native driver był bo to nam po prostu gwarantuje
to że to faktycznie będzie działać płynnie i będziemy uzyskiwać 60 klatek na sekundę bez tego na
różnych urządzeniach może być naprawdę różnie dodajmy
sobie jeszcze jedną animacje żeby po kliknięciu upgrade
coś się działo z tą kuleczką bo w tej chwili żebyśmy animację trochę się pojawia raz na starcie a
chciałbym żeby ta animacja jeszcze tutaj była inna nazwijmy sobie upgrade
animation i ona będzie działała na dokładnie tej samej zasadzie czyli
tu sobie możemy te style skopiować o i nasz level indicator właśnie
dokładnie tylko zamiast to anim damy sobie
upgrade animation i
oczywiście nasz level indicator musimy zrobić typu animated świetnie
i zróbmy tak skopiujemy to sobie
żeby po kliknięciu nasz
upgrade animation skalował się no dokładnie
tak samo jak tutaj i zobaczymy jak to będzie wyglądało przebudujmy to
sobie jeszcze raz okej no
i super jakoś to wygląda oczywiście też użyliśmy tutaj native drivera
i myślę że w tej lekcji to wszystko