Textinputlayout在KitKat中膨胀异常

时间:2017-03-15 09:59:59

标签: android android-support-library android-4.4-kitkat android-textinputlayout android-api-levels

以下是我的以下代码:

  <android.support.design.widget.TextInputLayout 
                    android:layout_width="match_parent"
                    android:layout_height="0dp"
                    android:layout_marginTop="@dimen/margin_5dp"
                    android:layout_weight="1"
                    android:gravity="left"

                    android:textColor="@color/text_input_layout"
                    android:textColorHint="@color/text_input_layout"
                    android:theme="@style/Theme.AppCompat"
        app:hintTextAppearance="@style/TextAppearance.App.TextInputLayout">

                    <EditText
                        android:layout_width="match_parent"
                        android:layout_height="@dimen/button_height"
                        android:layout_gravity="bottom"
                        android:layout_marginTop="@dimen/margin_5dp"
                        android:background="@drawable/textview_background"

                        android:imeOptions="flagNoExtractUi"
                        android:inputType="textNoSuggestions"
                        android:maxLength="50"
                        android:paddingLeft="3dp"
                        android:textColor="#FFFFFF"
                        android:textColorHint="@color/black"
                       android:textCursorDrawable="@drawable/color_cursor"
                        android:textSize="@dimen/text_size">

                        <requestFocus />
                    </EditText>
                </android.support.design.widget.TextInputLayout>

已为活动定义的样式。

<style name="MyTheme" parent="android:Theme.Holo.Light">
    <item name="android:actionBarStyle">@style/AppActionBar</item>
    <item name="android:textSize">@dimen/text_size</item>
    <item name="android:textColor">@color/black</item>
</style>

清单代码:

<activity
        android:name=".MyActivity"
        android:configChanges="keyboardHidden|orientation|screenSize"
        android:label="@string/MyActivity"
        android:screenOrientation="landscape"
        android:windowSoftInputMode="adjustPan|adjustResize"
        android:theme="@style/MyTheme" />

我尝试了很多来自stackoverflow的例子,但是在Android Os KITKAT(API 17)上没有用。应用最低目标是17。 我只在Kitkat上得到以下运行时错误。

  

android.view.InflateException:二进制XML文件行#138:错误膨胀类android.support.design.widget.TextInputLayout

如果有人可以提前帮助你。

1 个答案:

答案 0 :(得分:2)

如果您不想遇到旧版本的问题,请确保您不使用任何矢量图像并以旧方式android:src引用它,而是使用app:srcCompat

使用appcompat视图代替旧视图。

使用android.support.v7.widget.AppCompatEditText代替EditText

将您的支持库更新为最新版本。

<强>更新

确保您的ActivityName扩展 AppCompatActivity 而非活动 FragmentActivity (顺便在运行时将AppCompatActivity转换为AppCompat Views时使用AppCompatActivity)