Skip to content
Menu
CDhistory
CDhistory

Android Vector Drawable

Posted on május 13, 2021 by admin

Ebben a bemutatóban az Android Vector Drawable-t fogjuk tárgyalni. Továbbá implementálni fogjuk őket az Android alkalmazásunkban.

  • Android Vector Drawable
  • Creating Path for Vector Assets
  • Android Vector Drawable példa projekt felépítése
  • Android Vector Drawable kód

Android Vector Drawable

Gyakran használunk PNG-t rajzolható képként. Annak érdekében, hogy a PNG képek különböző képernyőméreteknél működjenek, több különböző méretű és sűrűségű PNG eszközt hozunk létre. Ezt követően a PNG képek extra helyet foglalnak és az Android alkalmazások nagy APK méreteihez vezetnek.

Ez az a pont, ahol a Vector Drawable a segítségünkre siet! Ezek helyettesítik a PNG-képeket.

A VectorDrawable egy XML-fájlban pontok, vonalak és görbék halmazaként definiált vektorgrafika a hozzá tartozó színinformációkkal együtt.

A képernyő méretének megfelelően méretezhetőek minőségromlás nélkül. Gyorsan renderelhetőek a képernyőre is. A VectorDrawable egy XML-fájl.

A New | Vector Asset segítségével új Vector Asset-et adhat hozzá a drawable mappához.

Így létrehozhatjuk a Material Design ikonok Vector Drawable-jét. A VectorDrawable kódja így néz ki:

Azokat a vector tagben állítjuk be. A android:viewportWidth és android:viewportHeight a drawable határainak szélességének és magasságának beállítására szolgál. Ezeken a méreteken belül rajzolódik a vektoros rajzelem a vászonra.

path a rajzelemet létrehozó tag. Az útvonalon belül vonalakat, görbéket, íveket hozunk létre, és beállítjuk a keretet, háttérszínt. Ezt az pathDataben lévő path parancsokkal tesszük.

A vektoros rajzelemek az Android Lollipop és újabb verziók óta kerültek bevezetésre, de a visszafelé kompatibilitásnak köszönhetően a korábbi verziókkal is kompatibilisek.

Creating Path for Vector Assets

A path parancsok egy ábécéből, majd koordinátákból állnak. Képzelje el az útvonalak létrehozását úgy, mintha festményt készítene. A nagybetűs ábécék abszolút pozíciót jelentenek. A kisbetűk relatív pozíciót jelentenek.

  • M – moveto parancs. Ez egy módja annak, hogy azt mondjuk, mozgasd a ceruzádat a nézet adott koordinátájára. Példa M 100 100 egy képzeletbeli ceruzát mozgat a vászon 100, 100 koordinátájára.
  • L – line to parancs. Egy vonal húzására szolgál az aktuális pozíciótól a megadott pozícióig.
    Példa : M 100 100, L 120 100 egy vízszintes vonalat rajzol.
  • z – Az útvonal lezárására szolgál. Egy vonalat rajzol az utolsó pozíciótól az első pozícióig. Példa: M 100 100 L 120 100 L 120 120 L 100 120 Z egy négyzetet hoz létre.
  • C – Ezt egy bezier görbe létrehozására használja. Ezután három koordinátakészletet kell megadnunk. Az első és a második lenne a két vezérlőpont a kezdőpont és a végpont között.
  • A – egy ív rajzolására szolgál. A után a következő formátumot kell megadni: (rx ry x-tengely-rotáció nagy ív-jelző sweep-jelző x y). rx ry és x tengely a két megadott sugár.
Egy vektorban több útvonalat is megadhatunk, ha az útvonal címkéket egy group címkén belül állítjuk be.

Hozzunk létre néhány véletlenszerű érdekes Vector Drawable-t az Android alkalmazásunkban a fenti ismeretek felhasználásával.

Android Vector Drawable példa projekt felépítése

Android Vector Drawable kód

A kód az activity_main.xml elrendezése az alábbiakban látható:

Nézzük meg egyesével a Vector Drawable implementációját.

ic_rectangle.xml

A fenti kódban két útvonalat hoztunk létre. Mindegyik egy-egy derékszögű háromszög.

A LinearLayout-unkon ezt beállítva a háttér így nézne ki:

ic_w.xml

A fenti kódban egy W szimbólumot próbálunk létrehozni vonalak segítségével.

Megjegyezzük: Külön pálya helyett egyetlen pálya parancsban egyesíthetjük az összeset. Bár használhatunk több útvonalat is, hogy tisztán lássuk, mit csinálnak az egyes útvonalak.

ic_w_filled.xml
Az alábbi kódban a z parancsot fogjuk használni az útvonalak lezárására és a bennük lévő szín kitöltésére:

ic_a.xml
Hozzuk létre az A betűt útvonalak segítségével.

ic_c.xml

Az A és C betű vektoros rajzolhatósága így néz ki:

ic_0.xml

Egy kört készítünk két ív segítségével, amelyeket aztán lezárunk.

Most az utolsó. Készítsünk egy JournalDev JD minta ikont a vektoros rajzolhatóság segítségével.

Az alkalmazásunk kimenete végül így néz ki:

Ezzel a bemutató végére értünk. A végleges Android VectorDrawable projektet letöltheti az alábbi linkről:

Az Android Studio projekt kódját letöltheti a GitHub Repository-ból is.

Vélemény, hozzászólás? Kilépés a válaszból

Az e-mail-címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük

Legutóbbi bejegyzések

  • Az Acela visszatért: New York vagy Boston 99 dollárért
  • OMIM bejegyzés – # 608363 – CHROMOSOME 22q11.2 DUPLICATION SYNDROME
  • Kate Albrecht szülei – Tudj meg többet apjáról Chris Albrechtről és anyjáról Annie Albrechtről
  • Temple Fork Outfitters
  • Burr (regény)

Archívum

  • 2022 február
  • 2022 január
  • 2021 december
  • 2021 november
  • 2021 október
  • 2021 szeptember
  • 2021 augusztus
  • 2021 július
  • 2021 június
  • 2021 május
  • 2021 április
  • DeutschDeutsch
  • NederlandsNederlands
  • SvenskaSvenska
  • DanskDansk
  • EspañolEspañol
  • FrançaisFrançais
  • PortuguêsPortuguês
  • ItalianoItaliano
  • RomânăRomână
  • PolskiPolski
  • ČeštinaČeština
  • MagyarMagyar
  • SuomiSuomi
  • 日本語日本語
©2022 CDhistory | Powered by WordPress & Superb Themes