web-dev-qa-db-fra.com

Application de crash des composants matériels Android. Impossible de gonfler xml

Essayé Puce composant de la bibliothèque de support
com.google.Android.support:design:28.0.0-rc01 et matériel
com.google.Android.material:material:1.0.0-rc01 

Trace de la pile

Android.view.InflateException: Binary XML file line #72: Binary XML file 
      line #72: Error inflating class com.google.Android.material.chip.Chip 
      at Android.view.LayoutInflater.inflate(LayoutInflater.Java:551)
      at Android.view.LayoutInflater.inflate(LayoutInflater.Java:429)`

Disposition  

<com.google.Android.material.chip.Chip
    Android:id="@+id/chip"
    style="style/Widget.MaterialComponents.Chip.Entry"
    Android:layout_width="wrap_content"
    Android:layout_height="wrap_content"
    Android:text="@string/account"
    app:closeIconEnabled="true" />`
5
Sourin Ghosh

Mettez à jour le thème de votre application pour hériter de l'un de ces thèmes:

Theme.MaterialComponents
Theme.MaterialComponents.NoActionBar
Theme.MaterialComponents.Light
Theme.MaterialComponents.Light.NoActionBar
Theme.MaterialComponents.Light.DarkActionBar

Par exemple:

<style name="AppTheme" parent="Theme.MaterialComponents.Light.NoActionBar">

Remarque: l’utilisation d’un thème Composants de matériaux permet d’afficher un inflateur personnalisé.

Source: https://www.material.io/develop/Android/docs/getting-started/

23
Mikhail Sharin

Enfin une solution pour générer des puces de manière dynamique en utilisant de nouvelles puces de matériaux

Google n'a fourni aucune documentation sur la disposition de chipsInput ni sur la création d'une adresse Gmail similaire à celle-ci. L'utilisation de ChipDrawable n'entraînera pas d'opération de suppression sur une puce car elle ne peut pas appeler setOnCloseIconClickListener J'ai pu utiliser HorizontalScrollView, ChipGroup et EditText 

Voici mon exemple de code: 

MaterialChipsInputDemo

1
Sourin Ghosh

Ajoutez les nouveaux attributs de thème suivants à votre thème d'application existant: 

<style name="Theme.MyApp" parent="Theme.AppCompat">

    <!-- Original AppCompat attributes. -->
    <item name="colorPrimary">@color/my_app_primary_color</item>
    <item name="colorPrimaryDark">@color/my_app_primary_dark_color</item>
    <item name="colorAccent">@color/my_app_accent_color</item>

    <!-- New MaterialComponents attributes. -->
    <item name="colorSecondary">?attr/colorPrimary</item>
    <item name="scrimBackground">@color/mtrl_scrim_color</item>
    <item name="textAppearanceHeadline1">@style/TextAppearance.MaterialComponents.Headline1</item>
    <item name="textAppearanceHeadline2">@style/TextAppearance.MaterialComponents.Headline2</item>
    <item name="textAppearanceHeadline3">@style/TextAppearance.MaterialComponents.Headline3</item>
    <item name="textAppearanceHeadline4">@style/TextAppearance.MaterialComponents.Headline4</item>
    <item name="textAppearanceHeadline5">@style/TextAppearance.MaterialComponents.Headline5</item>
    <item name="textAppearanceHeadline6">@style/TextAppearance.MaterialComponents.Headline6</item>
    <item name="textAppearanceSubtitle1">@style/TextAppearance.MaterialComponents.Subtitle1</item>
    <item name="textAppearanceSubtitle2">@style/TextAppearance.MaterialComponents.Subtitle2</item>
    <item name="textAppearanceBody1">@style/TextAppearance.MaterialComponents.Body1</item>
    <item name="textAppearanceBody2">@style/TextAppearance.MaterialComponents.Body2</item>
    <item name="textAppearanceCaption">@style/TextAppearance.MaterialComponents.Caption</item>
    <item name="textAppearanceButton">@style/TextAppearance.MaterialComponents.Button</item>
    <item name="textAppearanceOverline">@style/TextAppearance.MaterialComponents.Overline</item>

</style>

Source: https://material.io/develop/Android/docs/getting-started/
Merci @ Paranoid42

0
Jesus Dasso