Android 使用新的prefixText时,如何更改TextInputLayout的提示填充?
我曾尝试使用新的Android 使用新的prefixText时,如何更改TextInputLayout的提示填充?,android,android-textinputlayout,material-components,material-components-android,Android,Android Textinputlayout,Material Components,Material Components Android,我曾尝试使用新的prefixText实现TextInputLayout,使用com.google.android.material:material:1.2.0-alpha02。这是一个非常酷的特性,但是当我添加前缀文本时,提示标签会上浮并在前缀之后对齐。这看起来不太好,尤其是如果同一页上有更多的输入字段没有前缀,则浮动标签不会对齐 我的布局代码的相关部分: <LinearLayout android:id="@+id/login_input_fields"
prefixText
实现TextInputLayout
,使用com.google.android.material:material:1.2.0-alpha02
。这是一个非常酷的特性,但是当我添加前缀文本时,提示标签会上浮并在前缀之后对齐。这看起来不太好,尤其是如果同一页上有更多的输入字段没有前缀,则浮动标签不会对齐
我的布局代码的相关部分:
<LinearLayout
android:id="@+id/login_input_fields"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/login_username_input"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/username_hint"
app:prefixText="Prefix">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/login_username_edit_text"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="number"
android:singleLine="true" />
</com.google.android.material.textfield.TextInputLayout>
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/login_password_input"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/default_margin"
android:imeOptions="actionDone"
app:endIconMode="password_toggle">
<com.google.android.material.textfield.TextInputEditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/password_hint"
android:inputType="textPassword"
android:singleLine="true"/>
</com.google.android.material.textfield.TextInputLayout>
</LinearLayout>
要使用材质组件库,您必须使用a 使用此主题的布局:
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
...
</style>
<style name="AppTheme" parent="Theme.MaterialComponents.DayNight">
...
</style>
...
使用此主题的布局:
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
...
</style>
<style name="AppTheme" parent="Theme.MaterialComponents.DayNight">
...
</style>
...
val prefixView=textInputLayout.findViewById
如果您希望用输入文本点亮前缀,我无法用1.2.0-Alpha02重现问题,这是非常奇怪的Gabriele。是否存在其他依赖项或其他影响此的因素。我也在使用1.2.0-alpha02。您是否以编程方式更改重力之类的内容?或者,你有一个自定义的风格,用<代码> TcTyPutsType AtTo在你的应用程序主题中定义吗?现在我试着用空白的活动模板在Android Studio中创建一个全新的项目。在上面添加了布局代码和材质:1.2.0-alpha02,并且即使在预览窗口中也能够复制它(您必须将文本添加到文本输入文本,提示标签才能浮起)好的,我可以复制。这取决于应用程序中使用的主题错误。检查下面的答案。