Over 1600 customizable icons for Android including 750+ Google Material Design icons, 25 ready-made social badges, and more!

Related tags

Icons droidicon
Overview

droidicon - Over 1600 icons for Android!

Icons From...

New

* Updated FontAwesome to 4.3 * Unicode Icons * Your own custom icons

droidicon provides over 1600 customizable icons, 25 ready-made social badges and more! droidicon makes it super easy to add icons and badges to your app. All of the social badges are already styled. Just add them to your app! Or you can customize the icons however you want.

Based on IconicDroid

Ready-made Badges for Popular Social Networks using Company Brand Colors

Icon Examples

Add strokes, transparency, and color filters to your icons

MIT License

Comments
  • NullPointerException on updateTextSize

    NullPointerException on updateTextSize

    Hi, I recently stumbled upon a weird error saying NullPointerException on updateTextSize. Any suggestion or insight why this happen?

    Fatal Exception: java.lang.NullPointerException: Attempt to get length of null array
           at com.thedazzler.droidicon.IconicFontDrawable.updateTextSize(IconicFontDrawable.java:245)
           at com.thedazzler.droidicon.IconicFontDrawable.draw(IconicFontDrawable.java:181)
           at android.widget.TextView.onDraw(TextView.java:5040)
           at android.view.View.draw(View.java:13560)
           at android.view.View.getDisplayList(View.java:12511)
           at android.view.View.getDisplayList(View.java:12555)
           at android.view.View.draw(View.java:13284)
           at android.view.ViewGroup.drawChild(ViewGroup.java:2990)
           at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2860)
           at android.view.View.getDisplayList(View.java:12509)
           at android.view.View.getDisplayList(View.java:12555)
           at android.view.View.draw(View.java:13284)
           at android.view.ViewGroup.drawChild(ViewGroup.java:2990)
           at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2860)
           at android.view.View.getDisplayList(View.java:12509)
           at android.view.View.getDisplayList(View.java:12555)
           at android.view.View.draw(View.java:13284)
           at android.view.ViewGroup.drawChild(ViewGroup.java:2990)
           at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2860)
           at android.view.View.getDisplayList(View.java:12509)
           at android.view.View.getDisplayList(View.java:12555)
           at android.view.View.draw(View.java:13284)
           at android.view.ViewGroup.drawChild(ViewGroup.java:2990)
           at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2860)
           at android.view.View.draw(View.java:13563)
           at android.widget.FrameLayout.draw(FrameLayout.java:467)
           at android.view.View.getDisplayList(View.java:12511)
           at android.view.View.getDisplayList(View.java:12555)
           at android.view.View.draw(View.java:13284)
           at android.view.ViewGroup.drawChild(ViewGroup.java:2990)
           at android.widget.ListView.drawChild(ListView.java:3245)
           at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2860)
           at android.widget.AbsListView.dispatchDraw(AbsListView.java:2631)
           at android.widget.ListView.dispatchDraw(ListView.java:3240)
           at android.view.View.draw(View.java:13563)
           at android.widget.AbsListView.draw(AbsListView.java:4219)
           at android.view.View.getDisplayList(View.java:12511)
           at android.view.View.getDisplayList(View.java:12555)
           at android.view.View.draw(View.java:13284)
           at android.view.ViewGroup.drawChild(ViewGroup.java:2990)
           at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2867)
           at android.view.View.draw(View.java:13563)
           at android.view.View.getDisplayList(View.java:12511)
           at android.view.View.getDisplayList(View.java:12555)
           at android.view.View.draw(View.java:13284)
           at android.view.ViewGroup.drawChild(ViewGroup.java:2990)
           at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2860)
           at android.view.View.getDisplayList(View.java:12509)
           at android.view.View.getDisplayList(View.java:12555)
           at android.view.View.draw(View.java:13284)
           at android.view.ViewGroup.drawChild(ViewGroup.java:2990)
           at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2860)
           at android.view.View.getDisplayList(View.java:12509)
           at android.view.View.getDisplayList(View.java:12555)
           at android.view.View.draw(View.java:13284)
           at android.view.ViewGroup.drawChild(ViewGroup.java:2990)
           at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2860)
           at android.view.View.getDisplayList(View.java:12509)
           at android.view.View.getDisplayList(View.java:12555)
           at android.view.View.draw(View.java:13284)
           at android.view.ViewGroup.drawChild(ViewGroup.java:2990)
           at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2860)
           at android.view.View.getDisplayList(View.java:12509)
           at android.view.View.getDisplayList(View.java:12555)
           at android.view.View.draw(View.java:13284)
           at android.view.ViewGroup.drawChild(ViewGroup.java:2990)
           at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2860)
           at android.view.View.getDisplayList(View.java:12509)
           at android.view.View.getDisplayList(View.java:12555)
           at android.view.View.draw(View.java:13284)
           at android.view.ViewGroup.drawChild(ViewGroup.java:2990)
           at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2860)
           at android.view.View.draw(View.java:13563)
           at android.widget.FrameLayout.draw(FrameLayout.java:467)
           at android.view.View.getDisplayList(View.java:12511)
           at android.view.View.getDisplayList(View.java:12555)
           at android.view.View.draw(View.java:13284)
           at android.view.ViewGroup.drawChild(ViewGroup.java:2990)
           at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2860)
           at android.view.View.getDisplayList(View.java:12509)
           at android.view.View.getDisplayList(View.java:12555)
           at android.view.View.draw(View.java:13284)
           at android.view.ViewGroup.drawChild(ViewGroup.java:2990)
           at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2860)
           at android.view.View.getDisplayList(View.java:12509)
           at android.view.View.getDisplayList(View.java:12555)
           at android.view.View.draw(View.java:13284)
           at android.view.ViewGroup.drawChild(ViewGroup.java:2990)
           at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2860)
           at android.view.View.getDisplayList(View.java:12509)
           at android.view.View.getDisplayList(View.java:12555)
           at android.view.View.draw(View.java:13284)
           at android.view.ViewGroup.drawChild(ViewGroup.java:2990)
           at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2860)
           at android.view.View.draw(View.java:13563)
           at android.widget.FrameLayout.draw(FrameLayout.java:467)
           at com.android.internal.policy.impl.PhoneWindow$DecorView.draw(PhoneWindow.java:2458)
           at android.view.View.getDisplayList(View.java:12511)
           at android.view.View.getDisplayList(View.java:12555)
           at android.view.HardwareRenderer$GlRenderer.draw(HardwareRenderer.java:1144)
           at android.view.ViewRootImpl.draw(ViewRootImpl.java:2273)
           at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:2145)
           at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1956)
           at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1113)
           at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:4481)
           at android.view.Choreographer$CallbackRecord.run(Choreographer.java:725)
           at android.view.Choreographer.doCallbacks(Choreographer.java:555)
           at android.view.Choreographer.doFrame(Choreographer.java:525)
           at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:711)
           at android.os.Handler.handleCallback(Handler.java:615)
           at android.os.Handler.dispatchMessage(Handler.java:92)
           at android.os.Looper.loop(Looper.java:137)
           at android.app.ActivityThread.main(ActivityThread.java:4867)
           at java.lang.reflect.Method.invokeNative(Method.java)
           at java.lang.reflect.Method.invoke(Method.java:511)
           at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1007)
           at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:774)
           at dalvik.system.NativeStart.main(NativeStart.java)
    

    Thanks :)

    opened by felikjunvianto 9
  • Creating a icon circular background programatically.

    Creating a icon circular background programatically.

    Hi,

    I am wondering how can i create a icon with circular background?

    what am i trying to do:

    IconicFontDrawable iconicFontDrawable = new IconicFontDrawable(this.getApplicationContext()); iconicFontDrawable.setIcon("fa-thumbs-up"); iconicFontDrawable.setIconColor(getResources().getColor(R.color.light_blue));

    //setBackground will fulfill the whole view with icon

    i saw issue #19 however setBackgroundColor is not present anymore.

    Can somebody help me?

    Thanks

    opened by tibudiyanto 8
  • Put on jCenter

    Put on jCenter

    Instead of having to import the source code and add the project as a gradle subproject, it would be easier if you put droidicon on jCenter so one could simply do

    repositories {
        jcenter()
    }
    
    dependencies {
        compile 'com.thedazzler.droidicon:droidicon:1.0'
    }
    

    If you need any help, feel free to ask.

    opened by mattbdean 8
  • Add the missing gradle config files.

    Add the missing gradle config files.

    So that others can import this project from IDE, and make them to contribute to this project easier. Without those files, the current version cannot be imported from any IDE directly from a fresh check out.

    opened by UglyTroLL 5
  • Question: ImageView.setImageDrawable possible?

    Question: ImageView.setImageDrawable possible?

        IconicFontDrawable icon = new IconicFontDrawable(context);
        icon.setIcon("fa-trash");
        icon.setIconColor(context.getResources().getColor(R.color.white));
        deleteImg.setImageDrawable(icon);
    

    This will draw nothing on the ImageView... I noticed that your "how-to" was using "setBackground" instead but I cannot seem to use setImageDrawable, because setBackground seems to scale the image with the parent container.

    Any tips?

    opened by vnguyen972 4
  • Issues on Android Lollipop

    Issues on Android Lollipop

    When using a custom icon (tried several icon sets) on Android Lollipop, the icon itself is very small (and stays that way despite changing it's size via droidicon:db_size. The circle resizes appropriately however.

    Tried the same code on a device running Android 4.4.4 on which it works as expected.

    Code used:

    <com.thedazzler.droidicon.badges.DroidiconBadge
            android:layout_centerHorizontal="true"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            droidicon:db_bg_color="@color/blue_800"
            droidicon:db_icon_color="@color/white"
            droidicon:db_icon="gmd-person"
            droidicon:db_size="130dp"
            />
    
    bug 
    opened by itavero 4
  • work with drawables & add invert-method/inverted-style

    work with drawables & add invert-method/inverted-style

    Hi, awesome work :) Wondering can this work with drawables ? like:

    background="@drawable/fa-home"
    

    And add customized attrs like 'inverted' to drawable ?

    Just like the CSS counterparts.

    opened by BodhiHu 3
  • Instagram Badge

    Instagram Badge

    I used the instagram badge but there's just a blue circle and the instagram icon was too tiny. Hope you can fix this. Other badges works well. Thank you!

    opened by kaelmoreno-cp 2
  • setting db_icon_padding removes the icon

    setting db_icon_padding removes the icon

    I have the following:

               <LinearLayout
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:orientation="horizontal"
                    android:padding="@dimen/spacing_large"
                    android:background="@color/red"
                    >
                    <com.thedazzler.droidicon.badges.DroidiconBadge
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_gravity="center_vertical"
                        android:background="@color/orange"
                        app:db_icon_color="@color/white"
                        app:db_icon="gmd-warning"
                        app:db_icon_padding="1dp"
                        android:foregroundGravity="center_vertical"
                        />
                    <TextView
                        android:layout_weight="1"
                        android:layout_width="0dp"
                        android:layout_height="wrap_content"
                        android:text="Warning!."
                        android:textColor="@color/white"
                        />
              </LinearLayout>
    

    When I add the db_icon_padding="1dp", the icon isn't displayed. If I remove it, the icon is shown as expected.

    opened by loeschg 2
  • Custom icon doesn't show

    Custom icon doesn't show

    So I did a test with a pre built icon and a custom icon. The premade icon show correctly but the custom icon just shows a green circle with an android in it. Even I specified the icon the in the xml like so? Please help?

    <LinearLayout xmlns:droidicon="http://schemas.android.com/apk/res-auto" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="horizontal"> <com.thedazzler.droidicon.badges.AndroidDroidiconBadge android:layout_width="wrap_content" android:layout_height="wrap_content" droidicon:db_bg_color="@color/black" droidicon:db_icon_color="@color/white" droidicon:db_icon="fa-user" /> <com.thedazzler.droidicon.badges.VimeoDroidiconBadge android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginRight="4dp" /> </LinearLayout>

    screenshot_2014-12-04-09-48-33

    opened by vnguyen972 2
  • Add setIcon to DroidiconBadge

    Add setIcon to DroidiconBadge

    Is it possible to add a setIcon(String) method to DroidconBadge? Something like

     public void setIcon(String icon){
    
        iconicFontDrawable = new IconicFontDrawable(getContext());
        iconicFontDrawable.setIcon(icon);
        iconicFontDrawable.setIconColor(iconColor);
        iconicFontDrawable.setIconPadding((int) icon_padding);
        iconicFontDrawable.setContourColor(contourColor);
        iconicFontDrawable.setContour(contourColor, contourWidth);
        iconicFontDrawable.drawContour(drawContour);
        iconicFontDrawable.setAlpha(alpha);
    
    
        if (SDK_INT < JELLY_BEAN) {
            view_icon.setBackgroundDrawable(iconicFontDrawable);
        } else {
            view_icon.setBackground(iconicFontDrawable);
        }
    }
    

    This would be very useful in adapters where xml inflating is not available.

    opened by dadino 2
  • Icons not centered in Android Nougat (24)

    Icons not centered in Android Nougat (24)

    I realise this library is probably discontinued now, but if anyone has any tips on how to get the icons to center in the middle of the circles for Android 24+, I'd be very grateful. To recreate this, just create a new project that supports 24 and runs on a device with 24, the custom icon will appear in the bottom left.

    Thanks

    opened by nothingimportant55 2
  • Manifest merger failed - mipmap/ic_launcher

    Manifest merger failed - mipmap/ic_launcher

    I'm using Android Studio 1.2 RC. I've just added the lib (version 0.1.9) to build.gradle and I get the following error:

    Error:(23, 9) Attribute application@icon value=(@mipmap/ic_launcher) from AndroidManifest.xml:23:9
    Error:(23, 9) Execution failed for task ':app:processDebugManifest'.
    > Manifest merger failed : Attribute application@icon value=(@mipmap/ic_launcher) from AndroidManifest.xml:23:9
        is also present at com.github.theDazzler:droidicon:0.1.9:13:9 value=(@drawable/ic_launcher)
        Suggestion: add 'tools:replace="android:icon"' to <application> element at AndroidManifest.xml:20:5 to override
    

    At the Manifest, on line 23, inside the application tag, I have android:icon="@mipmap/ic_launcher". The project was created with Android Studio 1.2, which uses mipmap for icons and other drawables - you have a folder res/drawables and then folders res/mipmap-hdpi, res/mipmap-xhdpi etcetera.

    I've added the tools:replace="android:icon"inside the applicationtag and the error disappears.

    opened by AlbertVilaCalvo 2
  • No icon shown on certain os versions

    No icon shown on certain os versions

    Hi,

    I have a clean project created in Android Studio with DroidIcon added via Gradle. Using the example layout shown below the icon appears perfectly on a Nexus 5 running Lollipop, and a Nexus 5 on OS 21 .. but on a Galaxy S1 (yes, 1 :-p) running OS 18, no icon is shown, just the circular background .. the same happens on a Nexus 7. I don't think it's an OS issue, I get the feeling it's more to do with screen density or something because if I go to this method

    private void updateTextSize(Rect viewBounds)
    

    .. and edit out the second setTextSize, which is after the delta is applied, the icons appear on all devices .. far too big and cut off, but they do appear, so the missing icon might not be to do with the icon not displaying at all, just that it displays too small after the delta is applied?

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        xmlns:droidicon="http://schemas.android.com/apk/res-auto"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:paddingTop="@dimen/activity_vertical_margin"
        android:paddingBottom="@dimen/activity_vertical_margin"
        tools:context=".MainActivity$PlaceholderFragment">
    
        <com.thedazzler.droidicon.badges.DroidiconBadge
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            droidicon:db_bg_color="@android:color/black"
            droidicon:db_icon_color="@android:color/white"
            droidicon:db_icon="fa-user"
            />
    
    </RelativeLayout>
    

    Any ideas on how to fix this? I'm happy to give it a go myself if you point me in the right direction!

    Thanks,

    Steven

    opened by nothingimportant55 2
Owner
Devon Guinane
Devon Guinane
Easy to use material icons for Android

All available icons (744) If, like me, you're tired of copying 5 images (ldpi, mdpi, hdpi, xhdpi, xxhdpi) for each icon you want to use in your app, f

Anton Malinskiy 388 Oct 26, 2022
Forecast / DarkSky's Skycons, Animated Weather icons recreated for Android

Skycons for Android We set out to create a native weather app on Xamarin but we wanted to build something unique to differentiate ourselves amongst th

Torry Harris 200 Nov 14, 2022
Compose icons is a pack of libraries that provide well known Icon Packs to use in Jetpack Compose Multiplatform.

Compose icons is a pack of libraries that provide well known Icon Packs to use in Jetpack Compose Multiplatform. The library usage is inspired by Compose Material Icons.

Gabriel Souza 280 Dec 29, 2022
Android-Iconics - Use any icon font, or vector (.svg) as drawable in your application.

Android-Iconics ... allows to include any icon font with all its vector icons in your project. No limits. Scale with no limit, use any color at any ti

Mike Penz 5k Jan 5, 2023
A customizable and easy to use BottomBar navigation view with sleek animations, with support for ViewPager, ViewPager2, NavController, and badges.

AnimatedBottomBar A customizable and easy to use bottom bar view with sleek animations. Examples Playground app Download the playground app from Googl

Joery 1.2k Dec 30, 2022
A customizable and easy to use BottomBar navigation view with sleek animations, with support for ViewPager, ViewPager2, NavController, and badges.

AnimatedBottomBar A customizable and easy to use bottom bar view with sleek animations. Examples Playground app Download the playground app from Googl

Joery 1.2k Dec 30, 2022
A customizable and easy to use BottomBar navigation view with sleek animations, with support for ViewPager, ViewPager2, NavController, and badges.

A customizable and easy to use BottomBar navigation view with sleek animations, with support for ViewPager, ViewPager2, NavController, and badges.

Joery Droppers 1000 Dec 5, 2021
Utility for developers and QAs what helps minimize time wasting on writing the same data for testing over and over again. Made by Stfalcon

Stfalcon Fixturer A Utility for developers and QAs which helps minimize time wasting on writing the same data for testing over and over again. You can

Stfalcon LLC 31 Nov 29, 2021
Material Design ready and feature rich Twitter/Mastodon/Fanfou app for Android 4.1+.

Twidere for Android Material Design ready and feature rich Twitter/Mastodon/Fanfou app for Android 4.1+. Enjoy Fediverse now! Twidere-Android is maint

Twidere Project 2.7k Jan 1, 2023
Library containing over 2000 material vector icons that can be easily used as Drawable or as a standalone View.

Material Icon Library A library containing over 2000 material vector icons that can be easily used as Drawable, a standalone View or inside menu resou

null 2.3k Dec 16, 2022
Bottom Navigation widget component inspired by the Google Material Design Guidelines at https://www.google.com/design/spec/components/bottom-navigation.html

Material Bottom Navigation Library Lightweight Bottom Navigation library component inspired by the Google Material Design Guidelines at https://www.go

Alessandro Crugnola 1.4k Dec 18, 2022
Material Design icons by Google

Material design icons Material design icons is the official icon set from Google. The icons are designed under the material design guidelines. 4.0.0 U

Google 47.1k Jan 9, 2023
Material Design text field that comes in a box, based on (OLD) Google Material Design guidelines.

TextFieldBoxes A new Material Design text field that comes in a box, based on Google Material Design guidelines. ???? 中文看这里 UPDATE NOTICE 1.4.5 Releas

Mark Wang 769 Jan 7, 2023
Androidicons is a professional, handcrafted icon set with 250 icons in 14 different colors and 5 sizes, including an icon font and all sources.

Android Developer Icons Android Developer Icons is a custom icon set, created by Opoloo. Included are: 250 hand-crafted, pixel-perfect icons in 5 size

Opoloo 685 Nov 23, 2022
Social share - Social Sharing Plugin For Private Use only (Code without error checking)

Flutter Social Share plugin for sharing file to media with multiple (More option

MP IT SPACE 0 Mar 19, 2022
DNS over HTTPS / DNS over Tor / DNSCrypt client, firewall, and connection tracker for Android.

RethinkDNS + Firewall for Android An OpenSnitch-inspired firewall and network monitor + a pi-hole-inspired DNS over HTTPS client with blocklists. In o

null 1.1k Jan 5, 2023
A layout manager for the RecyclerView with interchangeable linear, grid, and staggered displays of views, all with configurable section headers including the sticky variety as specified in the material design docs.

SuperSLiM This is the version 5 development branch. Project Plan Support me on Patreon Blog What is Version 5 Version 5 is the current development bra

Tonic Artos 2.1k Jan 2, 2023
Easy social network authorization for Android. Supports Facebook, Twitter, Instagram, Google+, Vkontakte. Made by Stfalcon

SocialAuthHelper A library that helps to implement social network authorization (Facebook, Twitter, Instagram, GooglePlus, Vkontakte). Who we are Need

Stfalcon LLC 97 Nov 24, 2022
JetStrap - Ready-Made Jetpack Compose Components

JetStrap Ready-Made Jetpack Compose Components Installation implementation "com.

Hyeonseo Yang 0 Jan 6, 2022