Git Product home page Git Product logo

iconize's Introduction

Iconize Plugin for Xamarin Forms

Use icon fonts in your Xamarin.Forms application!

NuGet

  • Available on NuGet: NuGet

Build Status

Icon Fonts

Font Requests
If you have an icon font or series of svg pictograms you'd like included, just submit an issue or pull request and we'll work to add it.

Extensibility
In case you can't find the icon you want, you can extend the available icon directly from your app. All you need to do is to implement IIconModule with a .ttf file in your assets/resources and provide the mapping between keys and special characters, then give it to Iconize.With().

There are no constraints on the icon keys, but I strongly suggest you use a unique prefix like my- or anything, to avoid conflicts with other modules. FYI, if there is a conflict, the first module declared with Iconize.With() has priority.

Controls

Xamarin.Forms

  • IconButton (Button)
  • IconImage (Image)
  • IconLabel (Label)
  • IconTabbedPage (TabbedPage)
  • IconToolbarItem (ToolbarItem)
    • Requires IconNavigationPage

Setup

Nuget
All packages are provided via NuGet.

Configure

Core Project
Initialize any number of modules in App.cs constructor.

public App()
{
    ...
    Plugin.Iconize.Iconize.With(new Plugin.Iconize.Fonts.EntypoPlusModule())
                          .With(new Plugin.Iconize.Fonts.FontAwesomeRegularModule())
                          .With(new Plugin.Iconize.Fonts.FontAwesomeBrandsModule())
                          .With(new Plugin.Iconize.Fonts.FontAwesomeSolidModule());
                          .With(new Plugin.Iconize.Fonts.IoniconsModule())
                          .With(new Plugin.Iconize.Fonts.MaterialModule())
                          .With(new Plugin.Iconize.Fonts.MaterialDesignIconsModule())
                          .With(new Plugin.Iconize.Fonts.MeteoconsModule())
                          .With(new Plugin.Iconize.Fonts.SimpleLineIconsModule())
                          .With(new Plugin.Iconize.Fonts.TypiconsModule())
                          .With(new Plugin.Iconize.Fonts.WeatherIconsModule());
    ...
}

Xamarin.Android (AppCompat)
Initialize the IconControls.

protected override void OnCreate(Bundle savedInstanceState)
{
    Xamarin.Forms.Forms.Init(this, savedInstanceState);
    ...
    Plugin.Iconize.Iconize.Init(Resource.Id.toolbar, Resource.Id.sliding_tabs);
    ...
    LoadApplication(new App());
}

Xamarin.iOS (Unified)
Add the UIAppFonts key to Info.plist with the specific fonts you have chosen.

<key>UIAppFonts</key>
<array>
    <string>iconize-entypoplus.ttf</string>
    <string>iconize-fontawesome-regular.ttf</string>
    <string>iconize-fontawesome-solid.ttf</string>
    <string>iconize-fontawesome-brands.ttf</string>
    <string>iconize-ionicons.ttf</string>
    <string>iconize-material.ttf</string>
    <string>iconize-meteocons.ttf</string>
    <string>iconize-simplelineicons.ttf</string>
    <string>iconize-typicons.ttf</string>
    <string>iconize-weathericons.ttf</string>
</array>

Xamarin.Forms with Caliburn Micro
Add the following to App.cs

protected override NavigationPage CreateApplicationPage()
{
    return new IconNavigationPage();
}

License

This work is licensed under the Apache License, Version 2.0.

Entypo+
Entypo+ is licensed under the Creative Commons Attribution-ShareAlike 4.0 International License (CC BY-SA 4.0)

Font Awesome
Font Awesome is licensed under the SIL Open Font License 1.1.

Font Awesome Pro
Font Awesome Pro is commercial software that requires a paid license. Full Font Awesome Pro license. As a consequence the font files are not bundled with the plugin and need to be added manually.

Google Material Icons
Google Material Icons are licensed under the Apache License, Version 2.0.

Ionicons
Ionicons is licensed under the MIT License.

Jam Icons
Jam Icons is licensed under the MIT License.

Material Design Icons
Material Design Icons are licensed under the SIL Open Font License 1.1.

Meteocons
Meteocons are provided as free icons by the creator, Alessio Atzeni.

Simple Line Icons
Simple Line Icons are licensed under the MIT License.

Typicons
Typicons is licensed under the SIL Open Font License 1.1.

Weather Icons
Weather Icons are licensed under the SIL Open Font License 1.1.

Brand Icons
All brand icons are trademarks of their respective owners. The use of these trademarks does not indicate endorsement of the trademark holder by Iconize, nor vice versa. Brand icons should only be used to represent the company or product to which they refer.

iconize's People

Contributors

afranioce avatar ahailfinger avatar deveddy avatar endlessdelirium avatar geaz avatar hardcodet avatar ibovangeffen avatar johnbritton avatar jsmarcus avatar jwdb avatar lafritay avatar lemmensnick avatar maamountki avatar marra85 avatar masonyc avatar renao avatar stepkillah avatar thudugala avatar veeprox avatar yinyue200 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.