MIGRATION.md
with* methods of the IconicsDrawable were replaced with propertiesIconicsDrawableIconcisDrawable now depends on the ressources and theme, and tries to eliminate dependency on the Context
IconcisDrawable via XML for API 24+.apply is specialized and will not invalidate the drawable until all changes were madeNow libray is kotlin-first
Iconics
Iconics.IconicsBuilder
Iconics.Builderctx(Context) methodIconicsDrawable
*Res(int), *Px(int), *Dp(int) method to use IconicsSize and IconicsColor classes insteadTOOLBAR_ICON_SIZE and TOOLBAR_ICON_PADDING moved to IconicsSizeenableShadowSupport(View) moved to IconicsUtilsutils classes and typeface libraries now can not be instantiatedITypeface
getTypeface(Context) replaced with field rawTypefacefontRes (see GenericFont.kt if You wont to use old scheme)CommunityMaterial.Icon and CommunityMaterial.Icon2 if you use the icons via code, please use the depending enum.
h. All icons starting from a to g are in the CommunityMaterial.Icon enum, all icons from h to z are in the CommunityMaterial.Icon2 enum.androidX dependencies. This means your project will need to depend on androidX dependencies too. If you still use appcompat please consider using a version older than v3.1.x.IconicsMenuInflaterUtil start now with ico_ instead of iiv_IconicsMenuInflaterUtil was moved into the core module to simplify codecompile "com.mikepenz:iconics-core:2.9.0@aar"compile "com.mikepenz:iconics-views:2.9.0@aar"MinSdkVersion is now 14baseContext you should now define the IconicsLayoutInflater as default LayoutInflater. This will also bring Calligraphy compatiblity (or to other libs which wrap the baseContext)Activity extending the AppCompatActivity or implementing the AppCompatDelegate@Override
protected void onCreate(Bundle savedInstanceState) {
LayoutInflaterCompat.setFactory(getLayoutInflater(), new IconicsLayoutInflater(getDelegate()));
//...
super.onCreate(savedInstanceState);
//...
}
BaseContext with a different lib, or do not extend from AppCompatActivity or do not implement AppCompatDelegate you can still wrap the baseContext@Override
protected void attachBaseContext(Context newBase) {
super.attachBaseContext(IconicsContextWrapper.wrap(newBase));
}
com.mikepenz.google_material_typeface_library.GoogleMaterialcom.mikepenz.material_design_iconic_typeface_library.MaterialDesignIconic