我尝试使用TextInputLayout
,但由于缺少样式属性而导致各种错误,因为我的应用主题源自 android:Theme.Material.Light.DarkActionBar 而不是 Theme.appcompat 。如果我从 Theme.appcompat 派生主题,我会失去操作栏,因为我的Activity直接来自原生Activity
而不是android.support.v7.app.ActionBarActivity
。如果我从ActionBarActivity
派生,我会得到旧的支持操作栏,与原生 API 21 操作栏相比,它缺少大量功能。我无法做到这一点。
在一个不依赖于appcompat库的实际Lollipop应用程序中,不能使用TextInputLayout
似乎很奇怪。据推测,新设计模块中的其他好东西也无法正常工作。 :-(
在任何情况下,是否有必须在应用主题中定义的样式列表才能在使用 Theme.Material 的活动中使用TextInputLayout
?我最终在我的应用主题中添加了大约六到七个颜色声明(例如
android:colorControlActivated
,android:colorControlHighlight
,android:TextColor
和& c),但是膨胀的例外情况仍在继续。
或者是否有人知道提供TextInputLayout
的设计库的替代品?或者仅适用于 5.0或5.1 + ?
非常离奇。材料设计很可爱。但我不知道为什么没有任何本地课程支持材料设计。
答案 0 :(得分:1)
使用这种类型,它永远不需要Theme.appcompat
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/tv_metadata_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/tv_metadata_Details"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
</com.google.android.material.textfield.TextInputLayout>