14

デザイン サポート ライブラリandroid.support.design.widget.TextInputLayoutの新しいビューを使用する非常にシンプルなレイアウトがあります。

<android.support.design.widget.TextInputLayout
    android:id="@+id/til"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content">
    <EditText
        android:id="@+id/textDialog"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:hint="First Name"/>
</android.support.design.widget.TextInputLayout>

膨らませると例外が発生します:

Caused by: java.lang.RuntimeException: Failed to resolve attribute at index 18
            at android.content.res.TypedArray.getColor(TypedArray.java:401)
            at android.support.design.widget.CollapsingTextHelper.setCollapsedTextAppearance(CollapsingTextHelper.java:166)
            at android.support.design.widget.TextInputLayout.<init>(TextInputLayout.java:106)
            at java.lang.reflect.Constructor.newInstance(Native Method)
            at java.lang.reflect.Constructor.newInstance(Constructor.java:288)
            at android.view.LayoutInflater.createView(LayoutInflater.java:607)
            at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:743)
            at android.view.LayoutInflater.rInflate(LayoutInflater.java:806)
            at android.view.LayoutInflater.inflate(LayoutInflater.java:504)
            at android.view.LayoutInflater.inflate(LayoutInflater.java:414)
            at android.view.LayoutInflater.inflate(LayoutInflater.java:365)
            at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:381)
            at android.app.Activity.setContentView(Activity.java:2144)
            at com.example.trybindinglib.MainActivity.onCreate(MainActivity.java:24)
            at android.app.Activity.performCreate(Activity.java:5933)
            at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1105)
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2298)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2407)
            at android.app.ActivityThread.access$800(ActivityThread.java:149)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1324)
            at android.os.Handler.dispatchMessage(Handler.java:102)
            at android.os.Looper.loop(Looper.java:211)
            at android.app.ActivityThread.main(ActivityThread.java:5321)
            at java.lang.reflect.Method.invoke(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:372)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1016)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:811)
4

6 に答える 6

15

Design Support Library を追加しましたか? 依存関係を追加します。

compile 'com.android.support:design:22.2.0'

あなたのbuild.gradleに

于 2015-06-04T09:06:59.203 に答える
6

アプリのテーマが AppCompat テーマを拡張していることを確認してください。

    <!-- Base application theme. -->
    <style name="AppTheme" parent="@style/Theme.AppCompat">
        <!-- Customize your theme here. -->
    </style>
于 2015-05-30T20:46:19.363 に答える
4

Android Studio で生成された生のアプリケーションでも同じ問題が発生しました。

最初に次の依存関係を build.gradle compile 'com.android.support:appcompat-v7:22.2.0'に追加することで解決しました

次に、Aleksey の提案に従って、テーマ ベースを@style/Theme.AppCompatに変更する必要がありました。ここで、appcompat ライブラリに同じ名前 ( AppTheme ) のものがあり、AS が 2 つの間で混乱しているように見えるため、おそらく基本テーマの名前を変更する必要があることに注意してください...

お役に立てれば!

于 2015-06-08T09:31:30.967 に答える
1

XML が次のようになっていることを確認します。

<android.support.design.widget.TextInputLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <EditText
        android:id="@+id/search"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="search" />
</android.support.design.widget.TextInputLayout>

完全な例:

http://hmkcode.com/android-textinputlayout/

テーマスタイルの変更は不要

于 2015-10-07T17:24:08.660 に答える