{"id":12647,"date":"2017-07-24T16:49:00","date_gmt":"2017-07-24T14:49:00","guid":{"rendered":"http:\/\/www.devapp.it\/wordpress\/?p=12647"},"modified":"2017-07-24T16:51:45","modified_gmt":"2017-07-24T14:51:45","slug":"android-usare-vectordrawable-nelle-proprie-app","status":"publish","type":"post","link":"https:\/\/www.devapp.it\/wordpress\/android-usare-vectordrawable-nelle-proprie-app\/","title":{"rendered":"Android: usare VectorDrawable nelle proprie app"},"content":{"rendered":"<p>La classe <strong>VectorDrawable<\/strong>, introdotta nelle API 21, permette di introdurre immagini basate su grafica vettoriale nelle proprie app Android. Queste risultano di uno stile essenziale, in linea con i canoni estetici del Material Design e proprio per questo nelle app attuali se ne fa un grande uso.<\/p>\n<p>Ve ne sono molte disponibili nel SDK Android, gi\u00e0 pronte per essere utilizzate nei nostri progetti: vediamo come importarle.<\/p>\n<p>Innanzitutto, per poterle avere a disposizione anche nelle versioni pi\u00f9 datate di Android, si deve integrare la seguente direttiva nel file <strong>build.gradle<\/strong> relativo al nostro modulo applicativo (occorre un plugin Gradle di versione 2 o successiva):<\/p>\n<pre class=\"lang:java decode:true \">android {\r\n    ...\r\n    defaultConfig {\r\n      ...\r\n      vectorDrawables.useSupportLibrary = true\r\n    }\r\n    \r\n}<\/pre>\n<p>Facciamo click con il pulsante destro del mouse all&#8217;interno del progetto\u00a0e seguiamo\u00a0le voci di menu<em> New &gt; &#8220;Vector Asset&#8221;<\/em><\/p>\n<p><a href=\"http:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2016\/12\/android-vectordrawable-icon-button_02.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-12651\" src=\"http:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2016\/12\/android-vectordrawable-icon-button_02-300x110.jpg\" alt=\"\" width=\"300\" height=\"110\" srcset=\"https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2016\/12\/android-vectordrawable-icon-button_02-300x110.jpg 300w, https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2016\/12\/android-vectordrawable-icon-button_02.jpg 613w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>Si apre una finestra di \u00a0dialogo dalla quale \u00e8 possibile configurare l&#8217;icona selezionata attualmente (di default, quella che raffigura la sagoma del logo di Android):<a href=\"http:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2016\/12\/android-vectordrawable-icon-button_03.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-12652\" src=\"http:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2016\/12\/android-vectordrawable-icon-button_03-300x272.jpg\" alt=\"\" width=\"300\" height=\"272\" srcset=\"https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2016\/12\/android-vectordrawable-icon-button_03-300x272.jpg 300w, https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2016\/12\/android-vectordrawable-icon-button_03.jpg 400w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>oppure se ne pu\u00f2 scegliere\u00a0un&#8217;altra in un ricco catalogo di alternative suddiviso in categorie:<\/p>\n<p><a href=\"http:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2016\/12\/android-vectordrawable-icon-button_04.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-12653\" src=\"http:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2016\/12\/android-vectordrawable-icon-button_04-300x272.jpg\" alt=\"\" width=\"300\" height=\"272\" srcset=\"https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2016\/12\/android-vectordrawable-icon-button_04-300x272.jpg 300w, https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2016\/12\/android-vectordrawable-icon-button_04.jpg 400w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>Le risorse cos\u00ec ottenute figureranno tra quelle a disposizione del nostro progetto e potremo inserirle nei layout come i pulsanti in stile <em>borderless<\/em> che vediamo qui di seguito:<\/p>\n<pre class=\"lang:xhtml decode:true \"> &lt;ImageButton\r\n        android:layout_width=\"wrap_content\"\r\n        android:layout_height=\"wrap_content\"\r\n        android:layout_marginRight=\"16dp\"\r\n        app:srcCompat=\"@drawable\/ic_local_cafe_black_24dp\"\r\n        style=\"?android:attr\/borderlessButtonStyle\"\r\n        android:tint=\"#CCDDCC\" \/&gt;\r\n    &lt;ImageButton\r\n        android:layout_width=\"wrap_content\"\r\n        android:layout_height=\"wrap_content\"\r\n        android:layout_marginRight=\"16dp\"\r\n        app:srcCompat=\"@drawable\/ic_save_black_24dp\"\r\n        style=\"?android:attr\/borderlessButtonStyle\"\r\n        android:tint=\"#CCCC00\"\/&gt;\r\n    &lt;ImageButton\r\n        android:layout_width=\"wrap_content\"\r\n        android:layout_height=\"wrap_content\"\r\n        android:layout_marginRight=\"16dp\"\r\n        app:srcCompat=\"@drawable\/ic_signal_wifi_4_bar_black_24dp\"\r\n        style=\"?android:attr\/borderlessButtonStyle\"\r\n        android:tint=\"#00FF00\"\/&gt;<\/pre>\n<p>Questo sar\u00e0 come appariranno nell&#8217;interfaccia utente:<a href=\"http:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2016\/12\/android-vectordrawable-icon-button_01.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-12650\" src=\"http:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2016\/12\/android-vectordrawable-icon-button_01-300x68.jpg\" alt=\"\" width=\"300\" height=\"68\" srcset=\"https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2016\/12\/android-vectordrawable-icon-button_01-300x68.jpg 300w, https:\/\/www.devapp.it\/wordpress\/wp-content\/uploads\/2016\/12\/android-vectordrawable-icon-button_01.jpg 400w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>Questo genere di icone, si abbina molto meglio con lo stile attuale promosso da Android \u00a0e fornisce, oltre tutto, un ottimo apporto comunicativo visto che richiama alla mente dell&#8217;utente simbologie cui egli \u00e8 gi\u00e0 abituato.<\/p>\n<p>E voi che aspetto date ai vostri pulsanti? Usate questo tipo di icone? Commentate e fateci sapere!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>La classe VectorDrawable, introdotta nelle API 21, permette di introdurre immagini basate su grafica vettoriale nelle proprie&#8230;<\/p>\n","protected":false},"author":561,"featured_media":13168,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1682,481],"tags":[1278,1569,74,1817,1984],"class_list":["post-12647","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-android","category-risorse-utili","tag-android","tag-design-user-interface-android","tag-icon","tag-vector-graphics","tag-vectordrawable"],"acf":[],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/posts\/12647","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/users\/561"}],"replies":[{"embeddable":true,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/comments?post=12647"}],"version-history":[{"count":3,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/posts\/12647\/revisions"}],"predecessor-version":[{"id":12654,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/posts\/12647\/revisions\/12654"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/media\/13168"}],"wp:attachment":[{"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/media?parent=12647"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/categories?post=12647"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/tags?post=12647"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}