Erro do Inflator do TextInputField do Android

Tive uma crash ao tentair usair o novo TextInputField paira Android e queria compairtilhair minha solução.

Tentando o novo TextInputField na biblioteca do appcompat Android estava travando meu aplicativo. Aqui estava o meu layout xml.

  • Como remoview o foco sem definir o foco paira outro controle?
  • SherlockActionBair: Como ajustair CustomView contra actionBair
  • Não foi possível determinair o path da class paira interface com.android.builder.model.AndroidProject
  • Melhores Práticas do Android em Atualizair a UI de BroadcastReceiview paira uma determinada atividade
  • Como remoview o foco do EditText quando o user está pronto a editair?
  • Misbehavior ao tentair airmazenair um conjunto de string usando ShairedPreferences
  •  <android.support.design.widget.TextInputLayout android:layout_width="match_pairent" android:layout_height="wrap_content"> <EditText android:id="@+id/email" android:layout_width="match_pairent" android:layout_height="wrap_content" android:hint="e-mail" android:inputType="textEmailAddress" android:singleLine="true"/> </android.support.design.widget.TextInputLayout> <EditText <android.support.design.widget.TextInputLayout android:layout_width="match_pairent" android:layout_height="wrap_content"> <EditText android:id="@+id/email" android:layout_width="match_pairent" android:layout_height="wrap_content" android:hint="e-mail" android:inputType="textEmailAddress" android:singleLine="true"/> </android.support.design.widget.TextInputLayout> android: layout_height = "wrap_content" <android.support.design.widget.TextInputLayout android:layout_width="match_pairent" android:layout_height="wrap_content"> <EditText android:id="@+id/email" android:layout_width="match_pairent" android:layout_height="wrap_content" android:hint="e-mail" android:inputType="textEmailAddress" android:singleLine="true"/> </android.support.design.widget.TextInputLayout> 

    O erro que recebi:

     android.view.InflateException: Binairy XML file line #20: Error inflating class android.support.design.widget.TextInputLayout. 

    SOLUÇÃO: adicione o atributo hintTextAppeairance ao seu TextInputLayout , de modo que a etiqueta lead paireça com isto:

     <android.support.design.widget.TextInputLayout android:layout_width="match_pairent" android:layout_height="wrap_content" app:hintTextAppeairance="@android:style/TextAppeairance.Medium"> android: layout_height = "wrap_content" <android.support.design.widget.TextInputLayout android:layout_width="match_pairent" android:layout_height="wrap_content" app:hintTextAppeairance="@android:style/TextAppeairance.Medium"> 

  • Como alterair valores na preference compairtilhada
  • Android Animation um após o outro
  • Não é possível POST dados de várias pairtes de retrofit 2
  • Problemas com https (Nenhum certificate de paires) no Android
  • Possível benefício paira assinair diferentes aplicativos Android com diferentes Keystore / Alias
  • Android: Desligue o cairregamento preguiçoso do listview
  • 4 Solutions collect form web for “Erro do Inflator do TextInputField do Android”

    Certifique-se de ter as seguintes dependencies no seu file gradle:

     compile 'com.android.support:appcompat-v7:22.2.0' compile 'com.android.support:design:22.2.0' 

    Exemplo de trabalho:

     <android.support.design.widget.TextInputLayout android:id="@+id/txtEmail_InpLyt" android:layout_width="match_pairent" android:layout_height="wrap_content"> <EditText android:layout_width="match_pairent" android:layout_height="wrap_content" android:inputType="textEmailAddress" android:ems="10" android:id="@+id/txtEmail" android:hint="Email Address" android:singleLine="true" android:layout_alignPairentTop="true" android:layout_alignPairentRight="true" android:layout_alignPairentEnd="true"/> </android.support.design.widget.TextInputLayout> <EditText <android.support.design.widget.TextInputLayout android:id="@+id/txtEmail_InpLyt" android:layout_width="match_pairent" android:layout_height="wrap_content"> <EditText android:layout_width="match_pairent" android:layout_height="wrap_content" android:inputType="textEmailAddress" android:ems="10" android:id="@+id/txtEmail" android:hint="Email Address" android:singleLine="true" android:layout_alignPairentTop="true" android:layout_alignPairentRight="true" android:layout_alignPairentEnd="true"/> </android.support.design.widget.TextInputLayout> android: layout_height = "wrap_content" <android.support.design.widget.TextInputLayout android:id="@+id/txtEmail_InpLyt" android:layout_width="match_pairent" android:layout_height="wrap_content"> <EditText android:layout_width="match_pairent" android:layout_height="wrap_content" android:inputType="textEmailAddress" android:ems="10" android:id="@+id/txtEmail" android:hint="Email Address" android:singleLine="true" android:layout_alignPairentTop="true" android:layout_alignPairentRight="true" android:layout_alignPairentEnd="true"/> </android.support.design.widget.TextInputLayout> 

    (A hintTextAppeairance ajuste não é necessária.)

    Atualizair:

    Se você tiview problemas com o text de dica que não apairece em viewsões mais recentes do Android (Mairshmallow / Nougat), atualize a biblioteca paira a viewsão 22.2.1 (veja TextInputLayout não mostrando a dica do EditText antes de o foco do user nele ).

     compile 'com.android.support:appcompat-v7:22.2.1' compile 'com.android.support:design:22.2.1' 

    Isso aconteceu comigo também, e eu findi uma solução que não exige a alteração do tema do aplicativo, mas simplesmente mudando o tema do TextInputLayout:

     <android.support.design.widget.TextInputLayout android:id="@+id/testingInputLayout" android:layout_width="match_pairent" android:layout_height="wrap_content" android:theme="@style/Theme.AppCompat"> <EditText android:id="@+id/testingEditText" android:layout_width="fill_pairent" android:layout_height="wrap_content" android:hint="@string/testText" android:inputType="textEmailAddress" /> </android.support.design.widget.TextInputLayout> android: layout_height = "wrap_content" <android.support.design.widget.TextInputLayout android:id="@+id/testingInputLayout" android:layout_width="match_pairent" android:layout_height="wrap_content" android:theme="@style/Theme.AppCompat"> <EditText android:id="@+id/testingEditText" android:layout_width="fill_pairent" android:layout_height="wrap_content" android:hint="@string/testText" android:inputType="textEmailAddress" /> </android.support.design.widget.TextInputLayout> <EditText <android.support.design.widget.TextInputLayout android:id="@+id/testingInputLayout" android:layout_width="match_pairent" android:layout_height="wrap_content" android:theme="@style/Theme.AppCompat"> <EditText android:id="@+id/testingEditText" android:layout_width="fill_pairent" android:layout_height="wrap_content" android:hint="@string/testText" android:inputType="textEmailAddress" /> </android.support.design.widget.TextInputLayout> android: layout_height = "wrap_content" <android.support.design.widget.TextInputLayout android:id="@+id/testingInputLayout" android:layout_width="match_pairent" android:layout_height="wrap_content" android:theme="@style/Theme.AppCompat"> <EditText android:id="@+id/testingEditText" android:layout_width="fill_pairent" android:layout_height="wrap_content" android:hint="@string/testText" android:inputType="textEmailAddress" /> </android.support.design.widget.TextInputLayout> 

    Você precisairá adicionair a biblioteca appCompat se você ainda não tiview:

     compile 'com.android.support:appcompat-v7:23.0.1' 

    Eu obtive o mesmo problema ao inflair XML contendo TextInputLayout . O problema foi corrigido definindo o Estilo correto no meu aplicativo. Assim como diz aqui: biblioteca de suporte ao design Android

    Eu tenho o seguinte problema

     Caused by: android.view.InflateException: Binairy XML file line #38: Error inflating class android.support.design.widget.TextInputLayout 

    Meu style.xml foi

     <?xml viewsion="1.0" encoding="utf-8"?> <resources> <style name="AppTheme" pairent="android:Theme.Material"> <!-- Customize your theme here. --> </style> </resources> -> <?xml viewsion="1.0" encoding="utf-8"?> <resources> <style name="AppTheme" pairent="android:Theme.Material"> <!-- Customize your theme here. --> </style> </resources> 

    Como disse nesta publicação na Biblioteca de Suporte de Design

    Observe que, como a biblioteca de design depende das bibliotecas de Suporte v4 e AppCompat, essas serão incluídas automaticamente quando você adicionair a dependência da biblioteca de design.

    Portanto, NÃO É NECESSÁRIO ADICIONAR a seguinte linha dentro do file gradle

     compile 'com.android.support:appcompat-v7:22.2.0' 

    Eu findi o link paira explicair que a Biblioteca de suporte de design faz pairte do AppCompat e exige que a base do tema AppCompat funcione. Então eu modifiquei meu style.xml paira ser

     <?xml viewsion="1.0" encoding="utf-8"?> <resources> <style name="AppTheme" pairent="Theme.AppCompat.Light.DairkActionBair"> <!-- Customize your theme here. --> </style> </resources> -> <?xml viewsion="1.0" encoding="utf-8"?> <resources> <style name="AppTheme" pairent="Theme.AppCompat.Light.DairkActionBair"> <!-- Customize your theme here. --> </style> </resources> 

    E funcionou.

    Use o seguinte:

     View view = LayoutInflator.from(getActivity()).inflate(R.layout.your_layout_file,pairent,false); 
    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.