正在使用TextInputLayout如下为什么不能我使用TextInputLayout(从支持设计库)全无Theme.Appcompat
<android.support.design.widget.TextInputLayout
android:id="@+id/text_input_layout_name"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<EditText
android:id="@+id/edit_text_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/hint_full_name"
android:inputType="text" />
</android.support.design.widget.TextInputLayout>
的代码工作正常,如果我的应用程序使用Theme.AppCompat
Theme.AppCompat具有强制性对于下面的棒棒糖是有效的,因此我在values \ theme.xml中使用它。
但我的问题是为什么我不能使用材料主题的棒棒糖向前,即当我在value-v21 \ theme.xml中使用Theme.Material应用程序崩溃.... 关于这个问题的任何线索?
<style name="MyTheme" parent="@android:style/Theme.Material.Light.DarkActionBar">
下面的RuntimeException 应用程序崩溃在充气我得到他的二进制充气错误XML
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)
由于您已经在您的项目中支付包括AppCompat在内的字节价格,因此在所有API级别使用AppCompat会出现什么问题?最重要的是,您不必担心值-V21,因为您将在任何地方使用相同的代码。你认为你会得到什么? (不要忘了,AppCompat不仅仅是Action Bar或者Material design,还包括自Lollipop以来的很多bug修复和功能,直到现在针对资源。) –
使用Appcompat时没有问题,juts好奇它为什么没有Material设计支持棒棒糖 – zenith