Zacznijmy od skonfigurowania tego. Tutaj uruchom asynchronię kamery jest funkcją, którą nazywamy,
aby otworzyć kamerę, ale tak naprawdę można ją dość sporo skonfigurować.
Jeśli przekazujesz tutaj przedmiot, masz kilka opcji, które możesz ustawić, i oczywiście oficjalne dokumenty expo dla selektora
obrazów są miejscem, gdzie możesz dowiedzieć się wszystkiego o tych opcjach.
Teraz domyślne ustawienia są całkiem dobre,
ale na przykład tutaj możesz dodać opcję edycji i ustawić ją na wartość true, aby uzyskać podstawowy
edytor, który pozwala na przykład przyciąć obraz i to właśnie tutaj włączę.
Możesz także ustawić określony współczynnik kształtu, w którym chcesz się zalogować, np. 16: 9, które będą
brane pod uwagę w trybie edycji.
Możesz również ustawić, jeśli chcesz ciąg base64 zamiast pliku lub oprócz pliku, co powinienem powiedzieć, co oznacza, że otrzymujesz
ciąg tekstowy reprezentujący twój obraz, który jest dość duży i nie zrobię tego tutaj i
możesz również kontrolować jakość, a ja ustawię jakość na 0.
5, powinna to być wartość od 0 do 1, gdzie jedna jest najwyższą możliwą wartością
i oczywiście wpływa to również na rozmiar obrazu później.
Więc chcesz wybrać rozmiar lub jakość, która ma sens dla Twojej aplikacji.
Jeśli używasz obrazu jako miniatury, być może nie potrzebujesz obrazów o wysokiej rozdzielczości. Dzięki temu jest to skonfigurowane i
pytanie oczywiście, w jaki sposób uzyskamy dostęp do zrobionego zdjęcia?
Pamiętajcie, że to jest obietnica lub że to zwraca obietnicę.
Cóż, oczywiście
dlatego możemy poczekać na tę obietnicę, a rezultatem, który otrzymamy po spełnieniu obietnicy, jest rzeczywiście obraz, więc możemy po
prostu przechowywać ten obraz w stałej wartości. Obraz jest teraz obiektem zawierającym różne informacje
o zrobionym zdjęciu.
Więc tutaj możemy konsolować obraz dziennika, aby zobaczyć, co tam jest.
Zapiszmy to i przetestujmy na Androidzie. Tam, jeśli teraz przejdę
do tego nowego ekranu, zrobię zdjęcie i zrobię to zdjęcie za pomocą tej sztucznej kamery symulatora, dostanę
się tutaj i potwierdzam, teraz przechodzę do
tego narzędzia do przycinania lub edytowania, ponieważ włączyłem edytowanie, tutaj mam tę rzecz w formacie 16: 9,
którą mogę przenieść, i klikając przycinanie, mogę teraz to wybrać, a
jeśli spojrzymy na konsolę, zobaczymy, że to jest obiekt, który otrzymaliśmy.
Jest to obiekt z anulowanym polem, które mówi nam, że nie zostało to anulowane, ale zrobiliśmy zdjęcie, więc
jest
to pole, które możemy sprawdzić, aby dowiedzieć się, czy użytkownik zrobił zdjęcie lub czy
proces został anulowany.
Otrzymujemy wysokość i
szerokość obrazu, otrzymujemy typ, którym jest obraz i identyfikator URI, więc link do pliku obrazu.
Teraz znajduje się w katalogu tymczasowym, który jest okresowo czyszczony automatycznie, więc
oczywiście nie jest to pamięć ani ścieżka, w której chcesz ją na stałe przechowywać, a my przeniesiemy ją
później za pomocą interfejsu API systemu plików, ale na razie jest to
coś, co może pracować z.
Aby wyświetlić podgląd, możemy zarządzać niektórymi stanami tutaj w selektorze obrazów, importując stan użycia, a następnie inicjując go
tam, stan użycia można wywołać tutaj i oczywiście odzyskam tu trochę danych,
a to jest mój wybrany obraz i ustaw wybraną funkcję obrazu tak, jak jesteś przyzwyczajony ze
stanu użytkowania, a teraz możemy
to wykorzystać tutaj.
Tutaj chcę ustawić wybrany obraz na obraz. uri, więc do tego linku
do mojego obrazu, aby
ścieżka jako ciąg do mojego obrazu i fajne jest to, że ta ścieżka może być używana z
komponentem obrazu, działa z komponentem obrazu bez specjalnej konfiguracji.
Tak więc możemy dodać źródło, a teraz musimy ustawić to
na obiekt z tą właściwością URI. Jak dotąd w kursie używamy tego do wskazywania obrazów sieciowych,
możesz również wskazywać na obrazy lokalne,
więc tutaj możemy wskazywać na wybrany obraz.
Oczywiście działa to tylko wtedy, gdy mamy wybrany obraz, co ma miejsce dopiero po
użyciu kamery, więc teraz możemy dodać tutaj sprawdzenie if lub proste wyrażenie potrójne, w
którym sprawdzamy, czy wybrany obraz jest ustawiony, a jeśli nie jest ustawiony, stąd wykrzyknik, pokazuję ten tekst zastępczy, w przeciwnym razie tutaj,
z dwukropkiem, ustawiam obraz i teraz mamy to warunkowe wyjście, a zatem teraz, jeśli zapiszemy to, a zatem uruchomi się ponownie
na obu urządzeniach, na obu symulatorach, jeśli pójdę na Androida i robię
tutaj swoje zdjęcie, oczywiście ten aparat otwiera się nie dziwi. Możemy to potwierdzić, wybrać nasz obraz,
przyciąć
go, a teraz widzimy go tutaj w podglądzie,
więc teraz nasz obraz się przyzwyczaja.
Dzięki temu nadszedł czas, aby dodać go do miejsca, które możemy dodać, klikając przycisk Zapisz miejsce, i chyba
czas dodać trochę odstępów między tymi dwoma przyciskami.