Czy istnieją aplikacje do rysowania wektorowego, które generują natywny kod dla systemów iOS i Android? Chciałbym narzędzie do tworzenia kontrolek i przycisków interfejsu użytkownika zarówno dla systemów iOS, jak i Android (w wersji Xamarin). Mogę tworzyć wspaniałe obiekty dynamiczne z PaintCode dla systemu iOS, ale potem dla wersji Android musiałbym odtworzyć je z innym narzędziem dla Androida, więc zasadniczo robię wszystko dwa razy. Chciałbym znaleźć sposób na utworzenie dynamicznych kontrolek/przycisków, które mogą być używane zarówno w Xamarin iOS & Xamarin Android.Wyszukiwanie "kodu PaintCode" dla Androida
Odpowiedz
Nowa wersja programu PaintCode (wersja 3, od listopada 2016 r.) Eksportuje obecnie kod zgodny z systemem Android.
Jestem podekscytowany! Dzięki za podzielenie się wiadomościami. – LampShade
Jeśli chcesz go używać w projektach .NET (w tym Xamarin), możesz użyć mojego transpilera, który konwertuje eksport PaintCode do wieloplatformowego kodu SkiaSharp: https://github.com/michaldobrodenka/PaintCode2Skia –
Jednym z powszechnych podejść wielu organizacji (w tym mojej) do projektowania wieloplatformowego jest używanie czcionek ikon.
Jak to działa jest
- stworzyć wersję SVG swojej ikony/projekt
- utworzyć niestandardową czcionkę z ikoną SVG/wektor jako znak Unicode
Zaleta:
- Działa z wieloma platformami, w tym z Androidem, ios, Windows Phone oraz z siecią.
- ikony wektor, stąd skalowalne
wady:
- ikony nie może mieć gradienty
- ikony nie może mieć kilka kolorów (może być rozwiązany poprzez komponowanie ikonę na wiele elementów SVG i ich nakładania w kodzie)
Planujemy przenieść do SVG nasze aktywa w przyszłości. Z pewnością jest to sposób, w jaki projekt aplikacji go obsługuje. – LampShade
Mam mały projekt, który może rozwiązać twoje problemy:
https://github.com/almosr/android-svg-code-render
Jest to narzędzie, które konwertuje pliki SVG do Androida instrukcje rysowania i zapisuje go jako plik źródłowy Java. Następnie możesz po prostu wywołać metodę z tego źródła za pomocą parametru Canvas, a zawartość SVG zostanie narysowana bezpośrednio na kanwie Canvas.
Jest znacznie większa niż użycie pliku SVG jako danych wejściowych w środowisku wykonawczym, ponieważ nie musi analizować pliku SVG (który jest wewnętrznie XML). Zużywa też znacznie mniej pamięci.
Istnieje jednak kilka ograniczeń i wad, które mogą lub nie będą odpowiednie do twoich potrzeb. Zwłaszcza interakcje nie mogą być odwzorowane na wyjściu (jeszcze).
Pracuję nad konwerterem dla programu PaintCode na Androida. Czy to pomoże? W tej chwili rozwijam go tylko dla mojej firmy, ale akceptuję testy beta :) – marsbear
paintcodeapp.com teraz całkowicie obejmuje Androida – Fattie
@JoeBlow To ekscytujące! Nie mogę się doczekać, aby go użyć w przyszłości. Mam nadzieję, że raczej wcześniej niż później. – LampShade